5

Meteor の外部 API への呼び出しからのデータをテンプレートに入力するための基本的なパターンを理解するのに苦労しています。

これらは作用する要素です

  1. 実行して作成された新しい Meteor プロジェクトmeteor create monkeyproject
  2. JSON 配列を返す外部 API の URL。だとしましょうexample.com/api/getmonkeys。それぞれ異なる を持つサルの配列を返しますname
  3. ループmonkeyTemplateで呼び出されるハンドルバー テンプレート。{{#each}}これだとしましょう:

    <template name="monkeyTemplate">
        {{# each monkeys}}
            One of our monkeys is named {{name}}. <br>
        {{/each}}
        <input type="button" id="reload" value="Reload monkeys" />
    </template>
    

私がしたいこと

  • ページが読み込まmonkeyTemplateれると、外部 URL からサルが表示されます。
  • ユーザーがボタンをクリックすると、外部 URL が再度呼び出されてサルがリロードされます。

質問

Meteorで上記を行うための標準的なパターンは何ですか? 質問が混乱するリスクがあるので、私が理解しているいくつかの出発点を含めます。

  • 関数から返されたものをテンプレートに入力できTemplate.monkeyTemplate.monkeysます。外部リクエストが終了する前にページがロードされることを考えると、外部 URL からのコンテンツをどのように入力するのでしょうか?

  • を使用して JSON を取得できますMeteor.HTTP.call("GET", "http://example.com/api/getmonkeys", callback )このリクエストをどこに入れ、この状況でコールバック関数に何を入れますか?

  • Meteor.isServer/条件を使用するか、およびとMeteor.isClient呼ばれるファイルにコードを配置することで、サーバー側で何が起こるか、クライアント側で何が起こるかを制御できます。サーバー側とクライアント側に必要なコードは何ですか?clientserver

  • 関数を にアタッチすることで、ボタンがクリックされたときに何が起こるかを決定します Template.monkeyTemplate.events['click #reload']この状況で、コールバック関数には何が入るでしょうか?

くだらないコードで質問を混乱させることは控えます。私は、私のためにアプリケーションを書いたり書き直したりする人を探しているわけではありません。ガイドライン、標準パターン、ベスト プラクティス、および落とし穴を探しているだけです。うまくいけば、これは他の初心者にも有益です。

4

1 に答える 1