#angularjs #visual-studio #syntax-error #browser-link
#angularjs #visual-studio #синтаксическая ошибка #браузер-ссылка
Вопрос:
У меня есть ячейка таблицы, которая показывает, есть ли более 10 записей. Часть моей разбивки на страницы.
<td ng-show="totalRecords>10" colspan="5">
<ul uib-pagination style="margin:0;" total-items="totalRecords" ng-model="currentPage" ng-change="pageChanged()"></ul>
</td>
Довольно просто. Но вот сумасшедшая — она выдает следующую ошибку в Chrome:
Uncaught Error: Syntax error, unrecognized expression: td[ng-show='totalRecords @ browserLink:37
bc.error @ browserLink:37
bh @ browserLink:37
bp @ browserLink:37
...etc
Я отмечу, что $scope.totalRecords
установлено на ноль ( 0
) в контроллере. Установка других значений ничего не меняет. Все остальное в контроллере работает отлично.
Следующие сценарии не выдают никакой ошибки:
<td ng-show="totalRecords=10" colspan="5">...</td>
<td ng-show="totalRecords<10" colspan="5">...</td>
<td ng-show="totalRecords>9" colspan="5">...</td>
<td ng-show="totalRecords>=11" colspan="5">...</td>
<td ng-show="totalRecords" colspan="5">...</td>
У кого-нибудь есть предположение о том, почему?
Комментарии:
1. Попробовать ng-if вместо ng-show?
2. Используете ли вы Microsoft Visual Studio 2013 или новее?
Ответ №1:
Проблема связана с функцией Visual Studio «ссылка на браузер», которая может вызвать проблемы с AngularJS. Основываясь на некоторых исследованиях, которые я провел по поводу ошибки, с которой вы столкнулись, кажется, что люди рекомендуют отключить функцию ссылки на браузер в Visual Studio.
Следующая ссылка содержит аналогичное описание возникшей у вас ошибки и несколько способов отключить функцию ссылки в браузере: