0

次の問題があります。

同じテンプレートの編集可能バリアントと読み取り専用バリアントを構成する、同じ名前の 2 つのテンプレートがあります。

私のhtmlの2つの異なる場所(動的に作成されますが、問題を引き起こすのはこの条件です)私はテンプレートバインディングを使用しており、これらのそれぞれにバインドしたいと考えています。

最初のものは次のようになります。

<div data-bind="template: {name: 'myTemplate', data: $data, templateUrl: '/Templates/readonly/' }"></div>

そして2枚目はこんな感じ

<div data-bind="template: {name: 'myTemplate', data: $data, templateUrl: '/Templates/editable/' }"></div>

問題は、2 番目のテンプレート バインディングに到達すると、最初のテンプレートが同じ名前であるためノックアウトが再利用され、両方のテンプレートが読み取り専用になることです。

2 番目のテンプレートが他の場所とは別の場所にある場合、2 番目のテンプレートをノックアウトでダウンロードする方法はありますか、またはすべてのテンプレートに一意の名前を付ける方法はありません。

現在のロジックを考えると、それを変更するには多くの作業が必要になるため、名前を変更するのではなく、バインディングを使用して変更できることを願っています。

編集

ここにある外部テンプレート エンジンを使用しています

4

1 に答える 1

0

名前が一意である限り、再度フェッチするようです (たとえそれが同じ URL になるとしても.

したがって、それらを次のように変更します

<div data-bind="template: {name: 'readonly/myTemplate', data: $data, templateUrl: '/Templates/' }"></div>

<div data-bind="template: {name: 'editable/myTemplate', data: $data, templateUrl: '/Templates/' }"></div>

サーバー側に変更を加えることなく、期待どおりに機能させました:)

私を正しい軌道に乗せてくれた@ pax162に感謝します!

于 2013-10-25T11:52:31.390 に答える