2013-02-26 5 views
5

私はthis tutorialに従っており、これを使ってこれを作成しました:http://x111.meteor.com/ しかし、流星がクライアント側からデータを読み込むので、読み込みが非常に遅いことがわかります。Meteorではどのようにサーバー側でテンプレートをレンダリングするのですか?

私はMeteor.isServer内のグローバルTemplateを使用したいとき、私はこのエラーを取得:

ReferenceError: Template is not defined 
at app/products.js:56:3 ... 

私がクライアントを待つ必要はありませんので、私は、サーバー側からのテンプレートを提供するにはどうすればよいですか?

+0

流星の*全体のポイント*は、ワイヤ上の*データである* - 本当に – Swadq

答えて

1

クライアントのHTMLにコードが含まれていても、テンプレートはサーバーで処理されます。時間がかかる理由は、最初のロードで流星コレクションがクライアントにダウンロードされるためのステップです。

更新:これは正確に尋ねたものではありませんが、遅延の根本原因はテンプレートシステムではありません。

コアの問題は、ご使用のブラウザ&のサーバーの間の待ち時間はです。あなたはこの遅れを取り除くためにあなたに近いところにサーバを置く必要があります/それをどんなウェブサーバであっても短くする必要があります。

サーバを近づけないと、がロードされている可能性があります。というメッセージが表示され、ユーザはすぐにデータが利用可能になることを認識します。

{{#unless CartItems.count}} 
    <tr> 
     <td colspan="4">Loading...</td> 
    </tr> 
{{else}} 
    {{#each CartItems}} 
     <tr> 
      <td>{{Name}}</td> 
      <td>${{Price}}</td> 
      <td>{{Quantity}}</td> 
      <td>${{Total}}</td> 
     </tr> 
    {{/each}} 
{{/unless}} 
+0

データを提供し、HTMLを提供しませんか?私はこれがサーバでは基本的なものでなければならないことを意味しています。LOL:D動的ページを扱うことは、ほとんどの場合、ページを更新するよりも重要です。 – Adam

+0

すべてのデータクライアント側を読み込んではいけません。それはあなたが与えられたテンプレートに必要なもののためにページされるべきです。これは、サーバー側の発行機能によって制限されます。 –

+0

彼は3つのデータしか持っていない、私はそれがサーバーとブラウザの間のレイテンシだと思う。 @Adam localhostでこれを実行すると、同じ問題が発生しますか? – Akshat

1

現在のところこれを行うには、組み込みの方法はありませんが、(私はまだロードマップ上でそれを見ることはありませんが)サーバーサイドテンプレートのレンダリングを追加することが計画された機能です:

このバージョンでは、 spiderableは特に検索エンジン向けです。 メテオの将来のバージョンでは、ページの負荷が のWebブラウザにもHTMLが送信されます。 Meteorテンプレートシステムは、 に対応するように設計されています。

http://meteor.com/faq/can-meteor-serve-static-html

の人々は、これは、それはかなり必要だ、としたときにも非常に自然な事はやって良いSEOを必要とするサイトのための哲学「のみのワイヤを介してデータを送信」違反と言うだろうがサーバーとクライアントの両方で同じテンプレート言語とフレームワークを使用できます。

1

あなたはNode.jsのフレームワークにおけるこの種の機能を探しているなら、私はDerby.JS http://derbyjs.com/

+0

まだアルファダービーであっても、 – jusynth

+4

が素晴らしいように見えますが、この疑問についての質問です! – neftedollar

6

を使用することをお勧めしますthisを試してみてください。 このパッケージはMeteorのサーバーサイドハンドルバーのサポートを追加します。 Meteorがサーバー側のレンダリングサポートをリリースするまでは、主にサーバー側の電子メールhtmlの停止間隔として意図されています。

> mrt add handlebars-server 
関連する問題