В app.js я хочу создать:
const test = new Test;
Класс находится в другом скрипте. (myFetchLibary.js)
class Test{
constructor() {
this.client_id = 1234;
}
Проблема: тест не определен
Все скрипты загружаются в манифест следующим образом:
"background": {
"scripts": [
"myFetchLibary.js",
"app.js" ]
},
также есть popup.html, который загружает скрипты:
<script src = "app.js"></script>
<script src = "myFetchLibary.js"></script>
Как это сделать в расширениях Chrome? Я не хочу помещать все в один файл. Если оба файла загружены, разве я не смогу вызвать класс?
спасибо .. изменил порядок работает сейчас.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы можете использовать атрибут «отложить».
<script src = "app.js" defer></script>
<script src = "myFetchLibary.js"></script>
Атрибут defer - это логический атрибут, если он присутствует, он указывает, что сценарий выполняется после завершения анализа страницы.
1. Если присутствует асинхронность: сценарий выполняется асинхронно с остальной частью страницы (сценарий будет выполняться, пока страница продолжает синтаксический анализ) .
2. Если async отсутствует, а defer присутствует: сценарий выполняется, когда страница завершает синтаксический анализ.
3. Если ни async, ни defer не присутствуют: сценарий извлекается и выполняется немедленно, прежде чем браузер продолжит синтаксический анализ страницы.
Порядок элементов
<script>имеет значение. Вы захотите загрузить определениеclass(myFetchLibary.js) перед созданием его экземпляраnew(app.js).