3

より構造化された JS コードを作成するのに役立つフレームワークを調べていて、Backbone に出会いました。パブリックおよびプライベート プロパティとメンバー、継承などを使用してクラスを作成するための多くの機能があるようです。

Angular JS は、モデルへのマークアップの自動バインディングや、テンプレート化、フィルタリング、ソートなどのための巧妙な策略など、まったく異なる多くのことを行っているようです。

私の質問は、どちらを選択すべきかということではありませんが、両方を使用することは賢明ですか? AngularJS は非常にクールに見えますが、私が何かを見逃していない限り、オブジェクト指向の機能を提供しているようには見えません。これは理にかなっていますか?

4

3 に答える 3

3

Angular を別のフレームワークと組み合わせることが本当に意味があるかどうかはわかりませんが、そのままでは完全です。

一方、Backbone はより構成可能です。たとえば、Backbone と KnockoutJS を非常にうまく連携させるKnockbackプロジェクトを見ることができます。Knockout は、Angular で見られるものに比較的近い MVVM アプローチを採用しています。

于 2012-08-06T10:03:47.637 に答える
2

データ(別名モデル)のOOを作成する必要がある場合は、Base.jsなどのライブラリを使用してください。のようなメソッドを使用して、優れたOO構文、継承を提供しますextend。良い点は、ゲッター構文​​を次のように維持することです。これは、ゲッターmyObject.varを使用する必要があるBackboneとは対照的に、Angularでうまく機能するmyObject.get('var')ため、データバインディングは問題なく機能します。

これらの構文と哲学の違いと理由を理解するには、ここSOでAngularの作者の回答の1つを読んでください。

于 2012-08-20T07:27:32.137 に答える
1

AngularJS は意図的に特定の継承スタイルを強制しないため、自由に好きなことを行うことができます。Backbone.js の継承モデルが気に入った場合は、アンダースコア(Backbone.js に含まれています) を使用して.extendヘルパーを提供できます。

于 2012-08-06T22:11:09.620 に答える