npm модули в скриптове за съдържание на Firefox-Addon

С jpm човек вече (от Firefox 38 нататък) има възможност да използва npm модули в Firefox Add -ons, вж. документацията на MDN. Това изглежда е ограничено до основния входен файл (index.js по подразбиране), особено след като require() не е дефинирани в скриптове за съдържание.

Има ли някакъв начин за използване на npm модули в скриптове за съдържание за Firefox-Addons?


person Nico Schlömer    schedule 10.05.2015    source източник


Отговори (1)


Можете да получите URL адреса на файл чрез require.resolve, така че използвайте нещо като:

contentScriptFile: [ require.resolve("something/lib/file.js"), require("sdk/self").data.url("content-script.js") ]

Това ще използва файл от npm в скрипт за съдържание.

Ако npm файлът е CommonJS файл, това става по-сложно, може да се наложи да прочетете съдържанието на файла и да го предадете на скрипта за съдържание (използвайки предаване на съобщения или contentScriptOptions), за да бъде оценено с requireJS или нещо подобно.

person erikvold    schedule 13.05.2015
comment
Модули, които използват C, не могат да се използват, нали? - person Noitidart; 13.05.2015
comment
Опитвам това и изглежда, че кодът не може да взаимодейства със съдържанието - мога да вляза в кода, но той няма достъп до документа на моя панел. - person Dotan Dimet; 07.06.2015