我得到以下代码:
Clientes = new Meteor.Collection 'clientes'
Template.listaClientes.clientes = ->
query = {}
query = Session.get "searchData"
console.log "get: " + query.nombre
clientes = Clientes.find(query)
Template.listaClientes.events
'click .listItem' : ->
console.log "item clicked"
Template.searchPane.events
'click #btnToList' : ->
query = {}
#asigna los campos a query si no son blancos
if (x = $("#qNombre").val())? then query.nombre = x
if (x = $("#qCiudad").val())? then query.ciudad = x
console.log "q: " + query.nombre + query.ciudad
Session.set "searchData", query
它在启动时运行完美,查询是 {},因此模板显示集合中的每个文档。当我单击 #btnToList 时,我没有从 Find clausule 中得到任何结果。如果我从浏览器控制台手动将“searchData”设置为 {},它会触发触发器并再次绘制所有文档。
关于我所缺少的任何想法?
编辑:执行以下操作很好,这让我想知道发生了什么更多:/
q={}
q.nombre = query.nombre if query.nombre?
Clientes.find q