使用 meteor 自动完成包搜索 (mizzao)
Searching with meteor autocomplete package (mizzao)
我是 Javascript 和 Meteor 的新手,在让 Mizzau 的 Meteor 自动完成包正常工作时遇到了一些问题。我可以让表单自动完成,但无法过滤我的待办事项。我希望的最终结果是在自动完成中输入待办事项并让它过滤订阅,我也会选择搜索并从那里开始。我还要说我的初始状态是列表 returns 0 todos(显示 none)我觉得我可能很接近。我的代码的很大一部分来自于此:Meteor - autocomplete with "distinct" feature?
吨
跟我订阅有关系吗?
这是我的服务器端发布调用:
Meteor.publish("todosAuto", function(selector, options) {
Autocomplete.publishCursor(Todos.find(selector, options), this);
this.ready();
});
我的客户端订阅:
Meteor.subscribe('todosAuto');
我模板的相关部分:
<div class="container todoFormSec">
<div class="col-md-4">
{{> inputAutocomplete settings=settings id="msg" class="form-control" placeholder="Search..."}}
</div>
<div class="row">
<div class="col-md-5 pull-right">
<h1 class="todocountstyle text-right">You Have {{ todoCount }} Todos</h1>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="todos">
{{ #each todosAuto }}
{{ >todo }}
{{ /each }}
</div>
</div>
</div>
</div>
我的设置:
Template.home.helpers({
todos: function() {
return Todos.find();
},
todoCount: function() {
return Todos.find({userid: Meteor.userId()}).count();
},
settings: function() {
return {
position: "top",
limit: 5,
rules: [
{
token: '@',
collection: 'Todos',
field: "title",
subscription: 'todosAuto',
template: Template.titlePill
},
{
token: '#',
collection: 'Todos',
field: "categories",
options: '',
subscription: 'todosAuto',
matchAll: true,
template: Template.dataPiece
}
]
};
}
});
Template.home.events({ // listen for selection and subscribe
"autocompleteselect input": function(event, template, doc) {
Meteor.subscribe("todosAuto", doc.title);
}
});
过去我曾尝试使用您遇到的这个自动完成包。我发现它的保真度不足以满足我的需求。因此,我向您推荐 Twitter typeahead
和 bloodhound
。我对以下套餐非常满意ajduke:bootstrap-tokenfield in combination with sergeyt:typeahead
时间投入是非常值得的。查看我的 previous posting for examples. Here 是更多示例。
如果以上太复杂,试试jeremy:selectize。重点是那里有很多更好的包。
我是 Javascript 和 Meteor 的新手,在让 Mizzau 的 Meteor 自动完成包正常工作时遇到了一些问题。我可以让表单自动完成,但无法过滤我的待办事项。我希望的最终结果是在自动完成中输入待办事项并让它过滤订阅,我也会选择搜索并从那里开始。我还要说我的初始状态是列表 returns 0 todos(显示 none)我觉得我可能很接近。我的代码的很大一部分来自于此:Meteor - autocomplete with "distinct" feature? 吨 跟我订阅有关系吗?
这是我的服务器端发布调用:
Meteor.publish("todosAuto", function(selector, options) {
Autocomplete.publishCursor(Todos.find(selector, options), this);
this.ready();
});
我的客户端订阅:
Meteor.subscribe('todosAuto');
我模板的相关部分:
<div class="container todoFormSec">
<div class="col-md-4">
{{> inputAutocomplete settings=settings id="msg" class="form-control" placeholder="Search..."}}
</div>
<div class="row">
<div class="col-md-5 pull-right">
<h1 class="todocountstyle text-right">You Have {{ todoCount }} Todos</h1>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="todos">
{{ #each todosAuto }}
{{ >todo }}
{{ /each }}
</div>
</div>
</div>
</div>
我的设置:
Template.home.helpers({
todos: function() {
return Todos.find();
},
todoCount: function() {
return Todos.find({userid: Meteor.userId()}).count();
},
settings: function() {
return {
position: "top",
limit: 5,
rules: [
{
token: '@',
collection: 'Todos',
field: "title",
subscription: 'todosAuto',
template: Template.titlePill
},
{
token: '#',
collection: 'Todos',
field: "categories",
options: '',
subscription: 'todosAuto',
matchAll: true,
template: Template.dataPiece
}
]
};
}
});
Template.home.events({ // listen for selection and subscribe
"autocompleteselect input": function(event, template, doc) {
Meteor.subscribe("todosAuto", doc.title);
}
});
过去我曾尝试使用您遇到的这个自动完成包。我发现它的保真度不足以满足我的需求。因此,我向您推荐 Twitter typeahead
和 bloodhound
。我对以下套餐非常满意ajduke:bootstrap-tokenfield in combination with sergeyt:typeahead
时间投入是非常值得的。查看我的 previous posting for examples. Here 是更多示例。
如果以上太复杂,试试jeremy:selectize。重点是那里有很多更好的包。