1

まだAngularへの移行をうまく行おうとしているので、おそらく別の初心者タイプの質問ですが、ご容赦ください-

Durandal/Knockout では、バインディングを使用してcompose、オブジェクトのコンテキストでビューを表示できます。-

<div data-bind="with: firstPerson">
    <!-- ko compose: 'views/person' --><!-- /ko -->
</div>
<div data-bind="with: secondPerson">
    <!-- ko compose: 'views/person' --><!-- /ko -->
</div>

2 つの別個のノックアウト オブジェクト (オブザーバブル) にバインドされた同じビューを表示する

しかし、Angular では、要素内のすべてを特定のコンテキストにバインドする正しい方法が見つかりませんでした。さまざまなコンテキストで複数の html ファイルを表示するにはどうすればよいですか?

これはオブジェクトの配列ではないため、これは ng-repeat ではないと思います。同じオブジェクトの 2 つの個別のプロパティです。

  1. 親オブジェクト
    • 最初の人
    • セカンドパーソン

編集

明らかにデュランダルとノックアウトでは、次のようなものを使用できます

<span data-bind="text: fullName"></span>

それがどの親の一部であったかを定義する必要なしに人物ビューの内部で、これはAngularでどのように達成できますか?

4

1 に答える 1

1

ng-includeを使用してそれを実現できます。

<ng-include ng-init="person=firstPerson"  ng-model="person" src="'/views/person.html'"/>
<ng-include ng-init="person=secondPerson" ng-model="person" src="'/views/person.html'"/>

person.html多分似てる

<div class="modal-body">
   {{person.firstName}}, {{person.lastName}}
</div>

したがって、同じモデルpersonを使用して異なるデータ モデル (firstPersonまたはsecondPerson)を参照できます。

于 2013-08-16T01:13:46.197 に答える