Предотвращение Web Essentials JSHint" ko не определено " предупреждение при использовании нокаута
на ASP.NET проект MVC 5 используя связывание и минимизацию, у меня есть модель представления Javascript, которую я заполняю .cshtml файл. Модель представления ссылается на нокаут через ko
, который работает нормально. Однако вывод JsHint, который поступает из отчетов Web Essentials, предупреждает W117,'ko' is not defined
для каждой ссылки в ko
.
The .файлы js выглядят следующим образом:
/* exported MyViewModel */
function MyViewModel(viewModel) {
self.someValue = ko.observable(); // JsHint warning on this line.
...
}
The .файлы cshtml выглядят следующим образом:
...
@section Scripts {
<script>
ko.applyBindings(new MyViewModel(ko.mapping.fromJS(@Html.Raw(Json.Encode(Model)))));
</script>
}
как мне сохранить преимущества" не определенных " предупреждений в целом, но избегайте этих ложных предупреждений?
2 ответов
- в меню Web Essentials выберите Редактировать глобальные настройки jshint
-
прокрутите до нижней части.jshintrc файл и добавьте это:
"globals" : { "ko": false} // additional predefined global variables
это предотвратит JSHint от жалоб на ko, но все равно предупредит вас о других неопределенных символах.
обратите внимание, что вы также можете сделать это на основе каждого файла, поместив этот комментарий в верхней части файла javascript.
/*global ko*/
новый Web Essentials способен читать .jshintrc также из родительских каталогов.
- выберите Редактировать глобальные настройки JSHint (.jshintrc) из меню Web Essentials.
- скопируйте содержимое файла в ".jshintrc " файл в папке решения.
- редактировать файл (например добавить ко как глобальная переменная)
сюда .jshintrc можно добавить в управление версиями, чтобы поделиться им со всеми разработчиками без необходимость редактирования глобальных настроек JSHint на отдельных рабочих станциях.