Я использую AngularJS для поиска и создал специальный фильтр, чтобы выделить искомый текст внутри результатов.поиск по угловому выделенному фрагменту
Ниже мой фильтр (JS):
var myApp = angular.module('myApp', []).filter('highlight', function($sce) {
return function(query, phrase) {
if (phrase) query = query.replace(new RegExp('('+phrase+')', 'gi'),
'<span class="highlighted">$1</span>')
return $sce.trustAsHtml(query)
}
});
И соответствующий HTML:
<input ng-model="query" ng-keyup="search()" type="text" data-ele="home_search" class="form-control" id="exampleInputAmount" placeholder="">
<div ng-if="item.search_type == 'playset'" ng-animate="'animate'" ng-repeat="item in artists | filter: query | highlight:query" class="block gry-block">
После добавления фильтра, ошибки будут появляться, и я не знаю, почему.
Любая помощь предоставляется.
Вы также можете проверить это поведение на this URL.
Какие ошибки он показывает? – devqon
TypeError: Невозможно прочитать свойство «replace» of undefined. но вы можете посмотреть на консоль. –