サーチ…
反応的なクエリ
コード例:
main.html
<template name="test">
<input type="checkbox" id="checkbox1" name="name" value="data">Check Me
{{showData}}
</template>
Main.jsで
var check_status='';
//Reactive Var Initialization
Template.main.onCreated(function (){
check_status=new ReactiveVar({});
});
Template.main.helpers({
showData : function(){
return Collection.find(check_status.get());
}
});
Template.main.events({
"change #checkbox1" : function(){
check_status.set({field: 'data'});
}
});
説明:
反応check_status
var check_status
を初期化するとき、値を{}
等しく設定します。ヘルパーでは、レンダリング時に同じデータがすべてのデータを表示するのと同じくらい優れたCollection.find(check_status.get())
というクエリに渡されます。
チェックボックスをクリックすると、 check_status
の値を{field: data}
設定するTemplate.main.events
記述されたイベントがトリガされます。これは反応的なvarであるため、 showData
テンプレートが再度実行され、今回はクエリがCollection.find({field: data})
なので、 field
一致の'data'
が返されるfield
のみが返されます。
このコマンドを使用する前に、 reactive var
パッケージ( meteor add reactive-var
)を追加する必要があります。
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow