我有两种搜索形式
POST /search
GET /search?q=q
对于POST,我可以在客户端使用Meteor.call
。
'submit form': function() {
Meteor.call('search', data......
}
对于GET,如何在路由器中呼叫Meteor.call
?
Router.route('/search', {
template: 'ItemList',
data: function() {
return Meteor.call('search', this.params.query); // ???
}
关于search
方法,它不仅会搜索数据库,还会搜索文件系统。
我不知道如何进行第二次GET搜索。
答案 0 :(得分:1)
我建议不要在路由器中进行呼叫。路由器负责指导操作流程,如果它还管理所有数据和外部资源跟踪,它将使其更加复杂。
在模板级别,您可以轻松检测路由器参数(Router.current())或直接从数据部分中的路由器传递。
然后在渲染时你可以让模板点击你的通话功能。然后让它与一些依赖性跟踪反应
答案 1 :(得分:0)
您可以Router.current().params.q
从网址获取q变量。
在上述方法中,您不需要数据:function()。