webextensions tutorial recomendadas primera extensions extensiones extension crear addons firefox firefox-addon firefox-addon-sdk

firefox - tutorial - Acceder al módulo Add-on SDK desde el bloc de notas



web extensions (2)

Me gustaría probar pequeños fragmentos de mi código adicional con el bloc de notas. En este caso, estoy intentando acceder al módulo de notificaciones de esta manera:

const { notify } = require("sdk/notifications"); notify({ //My notification''s options });

Como esperaba, recibo el error Exception: require is not defined . Como el Add-on SDK está empaquetado con Firefox, me pregunto si hay una forma de acceder a los módulos directamente desde el bloc de notas. Gracias.

Editar: Después de buscar en Google, encontré scratch-kit (github) , un complemento que hace exactamente lo que estoy tratando de hacer. Pero desafortunadamente está roto , así que he archivado un error con la esperanza de que esta funcionalidad se agregue a los devtools.


Por ahora hay una manera relativamente simple de hacer esto. El siguiente código funciona bien si se ejecuta en contexto privilegiado (lo que significa cambiar el entorno de Scratchpad a "Navegador"):

let {require} = Cu.import("resource://gre/modules/commonjs/toolkit/require.js", {}); let {notify} = require("sdk/notifications");

Esto se admite a partir de Firefox 36 pero no está realmente documentado a partir de ahora, lo que significa que esto podría dejar de funcionar en el futuro.

A modo de referencia: la solicitud de extracción n.º 1679 agregó esta funcionalidad (aparentemente no para uso externo).