4

私は最近、MV* フレームワークを紹介されたばかりで、サイトにあるTodoMVCアプリのチュートリアルでEmber.jsを試す機会を得ました。

今後のプロジェクトの 1 つ ( Ruby on Rails CRUD アプリで、一部の機能では Twitter に似ています) に Ember を使用することを検討していましたが、まだ少し混乱しており、最終決定を下す前に、次の懸念をクリアできます。

  1. 中規模のマルチページ CRUD アプリに Ember のような高度なフレームワークを使用することは良い考えですか? jQuery の DOM 操作と AJAX 機能で構築されたインタラクティブ レイヤーと比較して、開発時間とメンテナンスが改善されますか? それとも、複雑なシングルページ アプリ (例: Grooveshark )を開発する場合にのみ、Ember (など) を使用するのが適切ですか?

  2. アプリが Rails を使用して開発されることを考慮し、Ember が使用されることを前提として、JavaScript が無効になっているブラウザーや検索エンジンのクローラーに対して、基本的な機能を備えたフォールバックを提供することは可能でしょうか? コードの複製やその他の汚いトリックが必要ですか? それを達成するために使用できるテクニックを知っていますか?

  3. Web サイトをモバイル ブラウジング (CSS のみを使用) に適合させて有効な結果を得ることができるでしょうか? それとも、電話で Ember を実行することによって課せられるオーバーヘッドにより、デバイスが応答性を維持する方法で Web サイトをレンダリングすることが難しくなりますか?

4

3 に答える 3

0

フォールバックと見なすことができる別のアプローチがあります。アプリケーション内の各ページの静的バージョンを事前にレンダリングします (毎日スケジュールされたタスク)。この静的バージョンは、HTML ファイルとしてサーバーに保存されます。スパイダー/ロボット ユーザー エージェントとしてスニッフィングするたびに、そのバージョンを配信します。

于 2015-01-20T15:03:56.113 に答える
0

@Scott Rankin は、Pure Ember アプローチを採用することに関する懸念のほとんどに対処しました。この決定を行う簡単な方法を 1 つ追加します。

アプリケーションがログインの背後にある場合は、Ember/MVVM を使用してください。コンテンツは一般に非公開であり、インデックスを作成することは想定されていないため、検索エンジンを考慮する必要はありません。

SEO の場合、インデックス可能なコンテンツの少なくとも一部を構築する必要があります。この良い例は、Discourseアプリケーションです。彼らは Ember を使用しますが、検索エンジンがそれらをインデックス化できるように、生成された HTML をアプリの HTML スラッグと共に送信します。彼らのアプローチについては、こちらで読むことができます。

于 2013-06-26T04:16:12.933 に答える