Задать вопрос
Dr_Elvis
@Dr_Elvis
В гугле забанен

Как сделать импорт в js другой js в chrome extention?

Привет!
Можно ли как то импортировать в js код другого js?
Например есть js файл в котором находятся базовые скрипты, которые вызываются во многих других функциях. Когда это всё единым файлом, то всё хорошо, но когда этот файл становится слишком большим, то уже задумываешься о разделении функционала плагина на, так сказать, "модули". каждый модуль отвечает за свой функционал. Однако в каждом модуле происходит вызов одних и тех же функций.
Вот собственно хочу выделить все такие функции в какой нибудь base.js и импортировать в другие js файлы.
Как можно это сделать если учесть что у меня extention, а не просто код на сайте.
  • Вопрос задан
  • 352 просмотра
Подписаться 2 Средний 3 комментария
Решения вопроса 1
yarkov
@yarkov Куратор тега JavaScript
Помог ответ? Отметь решением.
  1. Собирать код каким-нибудь бандлером
  2. Подключать ваш base.js ДО остальных скриптов


Выбирайте.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
erge
@erge
Примус починяю
Вы это читали?
https://developer.chrome.com/extensions/content_sc...

Declaratively injected scripts are registered in the manifest under the "content_scripts" field. They can include JavaScript files, CSS files or both. All auto-run content scripts must specify match patterns.

{
"name": "My extension",
...
"content_scripts": [
{
"matches": ["http://*.nytimes.com/*"],
"css": ["myStyles.css"],
"js": ["contentScript.js"]
}
],
...
}


js array of strings Optional. The list of JavaScript files to be injected into matching pages. These are injected in the order they appear in this array.

тоже самое и с секцией background
https://developer.chrome.com/extensions/background...

{
"name": "Awesome Test Extension",
...
"background": {
"scripts": [
"backgroundContextMenus.js",
"backgroundOmniBox.js",
"backgroundOauth.js"
],
"persistent": false
},
...
}

PS: в popup они вставляются через тег script как в обычном HTML файле.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы