私は反応的なブートストラップのselectpickerを持っていますが、私は奇妙な振る舞いを持っています: イベントは選択肢のオプションを変更する必要がありますが、流星onRenderedが呼び出されていない
ここvar renderTimeout = false;
Template.printerselect.onRendered(function(){
if (renderTimeout !== false) {
Meteor.clearTimeout(renderTimeout);
}
renderTimeout = Meteor.setTimeout(function() {
$('#printerName').selectpicker("refresh");
renderTimeout = false;
}, 10);
});
Template.printerSetupForm.onRendered(function(){
$('.selectpicker').selectpicker();
});
、テンプレート:
<div class="col-lg-3 col-md-4 col-xs-12 form-group">
<label>COMPANY</label>
<select id="printerCompany" class="form-control selectpicker" name="printer[company]">
<option selected="true" disabled="disabled" value={{company}}>
Please Select A Printer Company
</option>
{{#each Companies}}
<option value="{{company}}" {{printerCompanySelected company}}> {{company}}</option>
{{/each}}
</select>
</div>
<div class="col-lg-3 col-md-4 col-xs-12 form-group">
<label>PRINTER NAME</label>
<select id="printerName" class="form-control selectpicker" name="printer[name]">
<option selected="true" disabled="disabled" value={{name}}>
Please Select A Printer
</option>
{{#each Names}}
<!--<option value="{{name}}" {{printerNameSelected name}}>
{{name}}
</option>-->
{{>printerselect}}
{{/each}}
</select>
</div>
<template name="printerselect">
<option value="{{name}}"> {{name}} </option>
</template>
リフレッシュがある。これはonRendered一部です... onRendered一部に
を行っておりません。ページがレンダリングされるときに呼び出されます。
次に、いくつかのセッション変数を変更し、名前選択オプションを変更するように会社を変更しますが、リフレッシュは呼び出されないので、オンデリバリーされた部分には来ません。
しかし、私が再び会社を変えると、onRendered
部分が呼び出されます。
これは正しい名前を表示していない場合でも、私は会社と一致しない名前を選択している場合、選択が正しいものを選択することです。
私の英語の前に申し訳ありません、私は最善を尽くしました。
ありがとうございます!
EDIT:名前ヘルパー:
Names:() => {
company=Session.get('printer').company;
if(typeof company!='undefined') {
return Printers.find({company: company}).fetch();
} else {
return Printers.find().fetch();
}
}
「名前」ヘルパーとは何ですか? – user3374348
@ user3374348私は自分の投稿を編集しました。セッション変数を使用しているので、反応的にリフレッシュする必要があります – FlorianD
これがうまくいくはずです。しかし '.fetch()'は必要ではありません。少ないプリンターの会社からより多くのプリンターの会社に切り替えると機能しますか? – user3374348