0

ノックアウトに関して 2 つの簡単な質問があります。

  1. $parents キーを取得するにはどうすればよいですか。私のビューモデルが次の場合:

    viewModel = { ModelA: { ModelB : { ModelC : { someprop } } } }
    

    私は3つのテンプレートを持っています。最初のテンプレートはModelA、2番目のModelB、3番目のModelCをレンダリングしています.ModelCテンプレートで次のものを取得するにはどうすればよいですか:

    <a data-bind="visible: viewModel.{$parents[1].key}.{$parents[0].key}.{$data.key}.someprop" />
    
  2. 実行時に ModelC から観測可能な someprop を削除するにはどうすればよいですか。これをModelCテンプレートに埋め込もうとしました:

    <input type="checkbox" data-bind="click: function() { viewModel.removeIt(someprop) }" />
    

    そしてこれはルートページにあります

    viewModel.removeIt = function(node) {
        ko.cleanNode(node);
    };
    

    しかし、それは機能していません。

4

1 に答える 1

0

最初の質問であなたが何をしようとしているのかよくわかりませんが、答えるのに役立つフィドルを作成しました:http: //jsfiddle.net/FwJWG/

deleteオブザーバブルの削除については、http ://jsfiddle.net/7sS8k/を使用してクラスから完全に削除できます。

于 2012-09-22T22:33:53.473 に答える