同形/ユニバーサルJavaScript技術(ReactやAngular2などのフレームワークを使用)を使用して、ワードプレス駆動の単一ページアプリケーションを配信できますか?ユニバーサルJavaScriptを使用したWordPress駆動シングルページアプリ
答えて
Reactを使っていくつかのシングルページアプリケーションを構築した後、私はこれから将来ここに着陸する可能性のある他の人のためにこれに答えようとします。
ユニバーサル/同形のJavaScript
すでにこの流行語(AirbnbとMedium記事で主流を作った)に慣れていない場合は、基本的にサーバー側の両方でJavaScriptをレンダリングする能力を意味し、クライアント側。デスクトップおよびモバイルアプリケーション(例えば、ノーページをリロード)に似た - JavaScriptのMVCフレームワークの
落とし穴は
シングルページアプリケーションは、主に、より流動的なユーザーエクスペリエンスを提供する能力について、途方もなく人気となっています。
しかし、第1世代のフレームワーク(AngularとBackboneなど)には、クライアント側のレンダリングへの依存性という大きな欠点がありました。このpresented a few problems:
- JavaScriptが無効になっていると、まったく動作しません。
- 検索エンジンでクロールできません(ただし、JavaScriptを処理する方法はGoogle is now making significant progressです)。
- 最初に空白のページが表示され、コンテンツのレンダリングに8秒以上かかることがあります。
- ソーシャルシェアは難しい(プレビューなし)。 (バックエンドでのNode.jsで使用した場合)
今日のソリューションは、(Angular2含めて反応)
新しいフレームワーク/ライブラリは、クライアント側のレンダリングに加えて、サーバー側のレンダリングをサポートすることができます。
最初にサーバーからコンテンツを提供してから、ルーティングをクライアントに渡すという考えがあります。この技術は、すぐに読み込まれ、ページのリロードを必要としない検索エンジンフレンドリーなアプリです。
ワードプレスの進化
WordPress is now moving towards becoming a fully-fledged application frameworkとワードプレスコアにWPのREST APIを追加するプロセスです。これは(上記の技術と組み合わせて)、WordPressを使用してデータを提供している間に、本当にユニバーサルなアプリケーションを作成することができます。実際、WordPressとothersがすでに実行しているのはまさにそれです。
- 1. シングルページアプリにボルトcmsを使用
- 2. Wordpressを外部のRSSで駆動
- 3. JBehaveを使用したMule-動作駆動開発
- 4. ユニットテストのイベント駆動型javascript
- 5. Node.js TCPサーバーを使用したテスト駆動開発
- 6. 郵便番号を使用したデータ駆動テスト
- 7. XSLTを使用したデータ駆動型XML生成
- 8. Jmeterを使用したデータ駆動型アプローチ
- 9. Spring統合メッセージ駆動型チャネルアダプタを使用したAtomikosConnectionFactoryBeanのコンフィグレーション
- 10. 複数のコントローラを使用したAngular JSテスト駆動開発
- 11. weblogic MDBを使用したイベント駆動型プログラミング
- 12. Groovy Scriptingを使用したデータ駆動型テスト
- 13. ng2-bootstrap datepickerを使用したモデル駆動型
- 14. PHP:MVCアプリケーションを使用したテスト駆動型開発
- 15. ORMを使用したドメイン駆動設計
- 16. ユニバーサルWindowsアプリケーションを使用してアラームアプリケーションを起動するには
- 17. 異なる入力ファイルを使用したデータ駆動型自動化テスト
- 18. WordPressの感染マルウェアウイルス駆除
- 19. LL(1)ANTLRまたはANTLR3を使用するテーブル駆動コンパイラ
- 20. 別のJVM用のSpring Reactorを使用した非同期イベント駆動型プログラミング
- 21. Enterprise ArchitectへのJavascriptコード駆動ドキュメント
- 22. 角度ユニバーサルを使用して動的に生成されたデータのSEOサポート
- 23. Facebook Connectを使用したシングルページアプリのバックエンドとデータベースが必要ですか?
- 24. AngularJSを使用したシングルページアプリ - どのようにモデル化するのですか?
- 25. jMeterを使用してデータ駆動テストを行う方法
- 26. .NETでSystem.IO.Ports.SerialPortを使用してDTRを駆動する
- 27. ユーザーログイン/サインアップのための角型テンプレート駆動フォームの使用
- 28. ウェブアプリケーション用のデータ駆動型
- 29. Oracle SQLの駆動テーブルと駆動テーブル
- 30. SQL Server 2008 R2を使用しないデータ駆動型SSRSサブスクリプション
私にとってこれは少し実験のようです。ここでReactを使う利点が何であるかははっきりしていません。あなたはパフォーマンスについて言及しましたが、ボトルネックが何であるかによって、それはずっと速くはありません。 – azium
ユーザーが多く関わる主要な機能の1つは、フィルタリング/検索/並べ替えです。そして、私はサイト上の別のページをWebアプリケーションのように動作させたいと思っています。私の理解では、仮想DOMとそれが必要なものだけを再レンダリングする方法は、これをもっと速くするでしょう。私はここで間違っていますか? – jabacchetta
速度の向上はほとんど無視できます。アプリケーション全体を再構築する価値はありません。例えば、Angularアプリケーションは、一度に多くの要素を再レンダリングすると不安定になりますが、数行のコードで簡単に最適化できます(VDOMは不要)。つまり、Reactは技術の素晴らしい部分ですが、パフォーマンスを変更してはいけません。 – azium