Im пытается создать окно поиска для фильтрации результатов моей возвращенной коллекции на клиенте.Meteor RangeError: превышен максимальный размер стека вызовов. on keypress event
Однако, когда я на самом деле пытаюсь выполнить поиск, я получаю вышеуказанную ошибку в консоли.
RangeError: Maximum call stack size exceeded.
вот мой код.
<body>
{{#isolate}}
<header class="row-fluid">
{{> modules}}
</header>
{{/isolate}}
<div id="main" class="span11">
{{#if currentUser}}
{{#isolate}}
{{> customers_list}}
{{/isolate}}
{{#isolate}}
{{> contacts_list}}
{{/isolate}}
{{/if}}
</div>
</body>
моя форма поиска в внутри шаблона модулей
<template name="modules">
{{templateLogger "modules"}}
<ul id="module_list" class="nav">
{{#each list}}
<li>
<a href="#" id="module_{{_id}}" module_id="{{_id}}" class="module">{{name}}</a>
</li>
{{/each}}
<form><input type="text" id="search"></form>
</ul>
и мой шаблон customers_list, что я пытаюсь фильтровать результаты
<template name="customers_list">
<table class="table">
<tr>
<th>Name</th>
<th>Address</th>
<th>City</th>
<th>State</th>
<th>Zip</th>
<th>Phone</th>
</tr>
{{#each record}}
<tr>
<td>{{name}}</td>
<td>{{address}}</td>
<td>{{city}}</td>
<td>{{state}}</td>
<td>{{zip}}</td>
<td>{{phone}}</td>
</tr>
{{/each}}
</table>
</template>
и здесь являюсь обработчик событий для формы поиска
Template.modules.events({
'keypress input#search': function (event) {
Session.set("currentFilter", $('input#search'));
}
});
и форма помощник сделать отображение результатов
Template.customers_list.record = function() {
qry = Session.get("currentFilter") || "";
if (qry != "") {
return Customers.find({$or: [ {'name': qry}, {'address': qry}, {'city': qry}, {'state': qry} ] });
} else {
return Customers.find({competitor: null}, {sort: {name: 1}});
};
}
Я не имею ни малейшего понятия, что является причиной этой ошибки от того, что я был в состоянии прочитать на других SO сообщений об ошибке, что кажется, как сво бесконечным но эти вопросы не были специфическими для метеорита, и я не знаю, изменит ли это? также, если существует бесконечный цикл, который я не могу найти.
любая помощь была бы признательна.
Спасибо, что это был .val(); отсутствует – Moshe
Спасибо за регулярное выражение, а также отлично работает. – Moshe