#ember-cli #jshint
#ember-cli #jshint
Вопрос:
при использовании jquery внутри обратного вызова компонента функция обратного вызова для click понимает $ напрямую и работает с $, но возникает ошибка jshint
components/xxx.js: line 13, col 17, '$' is not defined.
Использование this.$ внутри обратного вызова jquery click выдает ошибку во время выполнения
import Ember from 'ember';
export default Ember.Component.extend({
didInsertElement() {
this._super(...arguments);
this.$()
.on('click', function() {
$('.class').something(); //ok but jshint error
this.$('.class').something();//jshint ok but error at run time
});
}
});
Спасибо
Ответ №1:
используйте это в верхней части файла
/* globals $ */
Ответ №2:
Другой подход заключается в установке следующей конфигурации .jshintrc
в корневом каталоге вашего приложения, которая предотвращает проверку всего приложения, которое сообщает jshint, что существуют две глобальные переменные:
{
"globals": {
"$": false,
"jQuery": false
}
}
Примечание: Если хотите, вы также можете использовать версию jQuery так же, как и Ember jQuery, изменив
$('.class').something(); //ok but jshint error
Для
Ember.$('.class').something();
который, вероятно, также удаляет эту ошибку.
Комментарии:
1. Спасибо! он работает с Ember.$, но я не могу заставить его работать с file .jshintrc. этот файл уже содержит много вещей, я помещаю запись «globals» в конец, но, похоже, никакого эффекта нет