0

Breeze.js エンティティで Knockout Validation を実行しようとしていますが、うまくいきません。

したがって、現在、アプローチが機能することを確認するために非常に基本的なテストを機能させようとしていますが、なぜこれが機能しないのかについて困惑しています。基本的に、ユーザーが私のエンティティの 1 つを編集して、そよ風の結果のエンティティにノックアウト検証を登録しようとすると、次のようなものが実行されます。

dataService.getEntity(selectedRowId())
                .then(function(result) {
                    currentEntity(result.entity);
                    var ent = currentEntity();
                    ent.TestField.extend({ required: true });
                });

次に、ビューでフィールドがバインドされます。

<input type="text" data-bind="value: currentEntity().TestField" />

しかし、これは機能していません。エンティティのすべてのフィールドがdependantObservablesであるためではないかと思いましたが、テスト用の計算フィールドを作成し、ノックアウト検証がうまく機能しているようです(読み取りおよび書き込みメソッドを指定した場合)

私が欠けているものや、この種のことを行うためのより良い方法を誰かが提案できますか?

(PS:私は実際にJuliánYusteのアプローチのようなことを試みています:

ブリーズユーティリティを使用したノックアウト検証?

あまり運がなかったので、いくつかの基本に戻そうとしています)

4

1 に答える 1