Components.utils.import в расширении
Не могу заставить работать Components.utils.import(...) в расширении.
Всё время выдаёт ошибку, что не может найти мой импортируемый файл. Перелопатил статьи на MDN-е: Using JavaScript code modules, Components.utils.import и им подобные. Файл test.js упростил до безобразия: var EXPORTED_SYMBOLS = ["tst_1"]; var tst_1 = 300;и положил его вообще во все возможные папки моего расширения. Пробовал его подгрузить и так: Components.utils.import("chrome://mytoolbar/content/test.js");и так, прописав алиас для resource в файле chrome.manifest Components.utils.import("resource://modules/test.js"); Components.utils.import("resource://test.js"); Результат одинаковый - не видит - выдаёт эксепшн о ненайденном файле. Причина, возможно, в этом, но в самой статье никакого решения не приводится: Цитата:
Как переместить вызов Components.utils.import в конструктор XPCOM компонента я, честно говоря, понятия не имею, и поиск по интернету как-то ничем особо мне не помог. Видел на фоне подобных вопросов пару тем, где люди отписались, что разобрались с проблемой, но не написали как именно. :( Может кто-нибудь что-то полезное по этой теме посоветовать? Подгружаемый модуль нужен для использования в качестве синглтон объекта для синхронизации работы нескольких экземпляров расширений, появляющихся в результате открытия новых окон (не табов) браузера. Если есть какие-то другие способы для их синхронизации или работы в единственном числе, буду рад информации по ним. |
Часовой пояс GMT +3, время: 22:55. |