私は次のコードを取得しました:
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句から結果が返されません。ブラウザコンソールから手動で「searchData」を{}に設定すると、トリガーが起動し、すべてのドキュメントが再度描画されます。
私が欠けているものについて何かアイデアはありますか?
編集:次のことを行うとうまくいき、何が起こっているのか不思議に思う:/
q={}
q.nombre = query.nombre if query.nombre?
Clientes.find q