AngularJS が Sencha Touch と一緒に使用されているプロジェクトをいくつか見つけました (例: https://github.com/tigbro/sencha-touch-angular-adapter )。両方を併用するメリットはありますか?もしそうなら、何のために?どちらも本格的なフレームワークであり、組み合わせる必要はないという印象を受けました。
1 に答える
私見、それは面倒なことではありません。
実際、SenchaTouch/ExtJS に他のフレームワーク/ライブラリを混在させるのは非常に簡単であり、(私が推測するに)人々がそれを行う動機は、主に ST/Ext への双方向データ バインディングの利点を得るためです。
表面に触れるだけで大丈夫です。HTML はクリーンで保守しやすくなり<tpl>
、JavaScript コード内に「奇妙な」タグが浮かぶことはなくなります。プロジェクトの UI 部分が美しくなります。
また、シンプル Ext.data.Model
で完璧なデータ バインディングの同期を簡単に作成することもできます。
ただし、ST/Ext を使用してバックエンドとのデータ通信を処理している場合は、Ext.data.Store
ほとんどの時間を処理しています。データのコレクションがバックエンドからストアに返され、モデルの hasMany アソシエーションがストアの形式になっています。
さて、ストアをプレーンな JavaScript 配列または双方向データ バインディングで使用されるある種の監視可能な配列と同期する方法は? バインドされた配列が変更された場合、ストアに対して何をする必要がありますか? ストアが変更された場合、配列をバインドするには何をする必要がありますか? 追加、削除、挿入は非常に簡単な操作ですが、並べ替えやフィルタリングはどうでしょうか?
したがって、あきらめる余裕がある場合はExt.data.Store
、angular と ST/Ext を混在させるのはかなり簡単な作業です。それ以外の場合は、煎茶に固執してください。