8

1 つの div を作成したい (基本的にリスト ボックスが含まれます)、その div を別のページで使用したい、

duarandal.jsで使用するのに最適なオプションはどれですか?

Composition

http://durandaljs.com/documentation/Using-Composition/

ウィジェット

http://durandaljs.com/documentation/Creating-A-Widget/

4

1 に答える 1

14

compose一般に、バインディングをテンプレートとして使用し、ウィジェットをユーザー コントロールとして使用することを考えてください。

あなたの質問には、どちらがあなたにとって正しい選択であるかを提案するのに十分な情報がありませんが、以下の2つの比較を提供します。これにより、選択が容易になります.


Durandal の構成バインディングを使用して、あるビューを別のビューの一部としてレンダリングまたは注入できます。たとえば、メニュー項目の表示に使用できる menu.html を定義できます。これは、jQuery テンプレートの概念、または ASP.Net MVC の「部分ビュー」に似ています。合成ビューは、親のビュー モデルをデータ ソースとして使用することも、独自のビュー モデルを持つこともできます。

Compose バインディングは、複数の場所でそのまま使用できるビューやビュー モデルがある場合に最も役立ちます。

一方、 Durandal のウィジェットは内部でコンポジションを使用しますが、ウィジェットの「パーツ」を抽象化するように設計されているため、1 つのウィジェットがレンダリングされる各ビューで異なる設定を行うことができます。ウィジェットには を含めることができparts、これらのパーツはウィジェット インターフェイスを介して公開できます。

デュランダル ウィジェットは、複数のビューで使用できる機能を作成する場合に最も役立ちますが、実装は異なる場合があります。

于 2013-08-19T16:24:26.843 に答える