#javascript #jestjs #referenceerror
Вопрос:
Извиняюсь — я просто не могу понять, как кратко сформулировать проблему.
Я имею в виду свой код здесь: https://github.com/nthali/GameOfLife
Есть один gameOfLifeModel.js
, который полностью является агностиком переднего плана и тщательно протестирован на все правила игры в жизнь.
Существует GameOfLife.html
(и сопутствующий css), который создает сетку для имитации игры в жизнь.
Затем есть a gameOfLifeController.js
, который переводится между пользовательским интерфейсом (html/css) и моделью.
Два вопроса:
- Единственный способ для меня сделать эту работу-это перечислить оба файла js в
<script>
тегах в html. в идеале я бы предпочел указать только контроллер в html иrequire
классы моделей в controller.js. Попытка сделать это вызывает'Uncaught ReferenceError: Cannot access 'gameOfLife' before initialization'
- С другой стороны, если я попытаюсь написать шутливый модульный тест для controller.js при текущей настройке у меня есть
require
классы gameOfLifeModel в контроллере, но если я затем попытаюсь запустить html, в нем будет написано,Uncaught SyntaxError: Identifier 'GameOfLifeModel' has already been declared
Есть какие-нибудь мысли?