Jshint жалуется: "Ember" не определен
У меня есть стандартный файл Ember
main.js
, который начинается следующим образом:
this.App = Ember.Application.create({
LOG_TRANSITIONS: true,
VERSION: '1.0.0',
ready: function () {
console.log('App version: ' + App.VERSION + ' is ready.');
}
});
Выполнение этого с помощью jshint
жалуется на то, что Ember не определен, что верно для этого конкретного файла на сервере, во время фазы развертывания. Из-за этого отображается много сообщений об ошибках.
Ember
доступен в браузере тегом script
в index.html
:
<script src="scripts/vendor/ember-1.0.0-rc.2.js"></script>
Как я могу сказать jshint
о Ember
?
Ответы
Ответ 1
Следующее должно сделать это:
/*global Ember */
this.App = Ember.Application.create({
LOG_TRANSITIONS: true,
VERSION: '1.0.0',
ready: function () {
console.log('App version: ' + App.VERSION + ' is ready.');
}
});
Найдено в JS Hint Docs
Ответ 2
Если вы используете новый ES6, например, из ember-cli, вы должны импортировать Ember:
import Ember from 'ember';
Я следил за учебником Evil Trout Ember Reddit и увидел следующие ошибки в тестах:
my-new-app/routes/subreddit.js should pass jshint.
my-new-app/routes/subreddit.js: line 3, col 16, 'Ember' is not defined.
добавление вышеприведенной строки в начало my-new-app/routes/subreddit.js
прошло тесты.