ホームページ > 記事 > ウェブフロントエンド > テンプレート ヘルパーで Meteor メソッドを呼び出し、非同期応答を処理する方法
テンプレート ヘルパーでの Meteor メソッドの呼び出し
MeteorJS では、テンプレート ヘルパー内から呼び出すことができるメソッドを定義できます。これにより、サーバー側のアクションを実行し、テンプレートに表示できるデータを取得できるようになります。
これを実現するには、次の手順に従います。
定義Meteor メソッド:
lib/test.js などの別のファイルで、Meteor.methods() API を使用して Meteor メソッドを定義します。例:
<code class="js">Meteor.methods({ viewTest: function (str) { return str; } });</code>
テンプレート ヘルパーでメソッドを呼び出します:
テンプレート ヘルパーで、Meteor.call( ) 関数。たとえば、client/myView.js:
<code class="js">Template.helloWorld.helpers({ txt: function () { var str = Meteor.call('viewTest', 'Hello World.'); return str; } });</code>
では、文字列以外の引数を str パラメータに渡すと、最初はテンプレートに値が表示されない可能性があります。これは、Meteor メソッドが非同期で実行され、メソッドの結果が利用可能になる前にテンプレートがレンダリングされるためです。
非同期メソッド呼び出しの解決
この問題を回避するには、次のことを確認します。メソッドの応答でテンプレートが更新される場合は、次のいずれかの手法を使用できます。
結論
テンプレート ヘルパーで Meteor メソッドを利用することで、次のことを実行できます。サーバー側のアクションを実行し、テンプレート内でデータを動的に取得します。リアクティブ変数またはセッション変数を使用して非同期メソッド呼び出しを処理すると、メソッドの完了時にテンプレートに更新された情報が表示されるようになります。
以上がテンプレート ヘルパーで Meteor メソッドを呼び出し、非同期応答を処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。