問題タブ [ko.observablearray]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
14436 参照

knockout.js - ノックアウト - foreach と sort を一緒に使用する

foreach バインディングとソートの組み合わせに問題があります。次のようにバインドされたリストがあります。

Widgets は単純な監視可能な配列です。

これはうまく機能し、「ウィジェット」のリストが表示されます。このリストに新しい「ウィジェット」を追加すると、データ バインディングによってリストに動的に表示されます。

ただし、並べ替えを配列に追加するとすぐに:

その後、新しく追加されたウィジェットは、ページをリロードしない限り、リストに表示されなくなります。(この時点でソートはうまく機能します。ソートしている「順序」フィールドを更新すると、リスト内の項目が動的に再ソートされます)。

監視可能な配列内の新しいアイテムの動的更新でソートをうまく実行するにはどうすればよいですか?

データを取得するために Breezejs を使用していますが、それがこのシナリオに影響しているとは思いません。

0 投票する
1 に答える
270 参照

knockout.js - ノックアウト マッピング プラグインを使用したデータのバインド配列

次の JSON データがあります。

]

以下を使用して、これを HTML ページに簡単にデータバインドできます。

そして、ここに私のHTMLがあります:

今、ノックアウト マッピング プラグインを使用して同じことを達成したいと考えています。私は次のことを試しました:

これによりエラーが発生します-明らかに、ビューモデルにはもう存在しない data-bind="foreach:donuts" を使用したためです。では、UI やデータを変更してこれを機能させるにはどうすればよいでしょうか?

また、マッピング プラグインを使用する場合、ドーナツ データに新しいオブジェクトを追加したい場合、どうすればよいですか?

0 投票する
1 に答える
95 参照

knockout.js - バインド後に追加されたオブザーバブルを削除できないのはなぜですか?

http://jsfiddle.net/scottbeeson/SRUKN/16/

左側のリストの項目をクリックすると、右側のリストに追加されます。右側のリストのアイテムをクリックすると、それらが削除されます。すでに存在する最初のアイテムは削除されますが、追加されたアイテムは削除されません。バインディングなどを再適用する必要がありますか?

0 投票する
1 に答える
50 参照

knockout.js - 変更された値から配列を作成する - ノックアウト

私のアレイが展示されています

私の配列は監視可能な配列であり、テンプレートを介してそれを調べています。

クリックするたびに、アクセス値が変更されます (null - 0 - 1)

私がやろうとしているのは、アクセス値が変更されたときに、変更されたものだけを取得できるようにしたいということです ( {"name": ..., "access": ...} 変更された "access" のペア) 配列全体ではなく。私はそれを行う方法についての手がかりがありません。

助けてください。ありがとう!

0 投票する
3 に答える
5003 参照

javascript - オブザーバブルの Knockout.js 動的バインディング

ノックアウトを利用して編集可能なテーブルを作成しようとしています。見出しとテーブル データの両方のコレクションを持つ JSON オブジェクトがあります。このテーブルは、任意のオブジェクトを使用して構築する必要があります。JSON オブジェクトをループして ko.observableArray を作成し、ko.observables を作成してデータを取り込みます。私はそれをすることができました。私の問題は、ko.observables がデータ バインドされていないことです。

これが私のJavaScriptのスニペットです:

ここに私の Fiddle http://jsfiddle.net/breck421/YFNLX/があり、以前に説明したポイントまで動作しています。

私がやろうとしていることが可能かどうかはわかりませんが、これについて別の目を向けていただければ幸いです。

ありがとう、

ヨルダン

0 投票する
1 に答える
646 参照

knockout.js - ノックアウトはモデル内から ObservableArray にアクセスできません

これはかなり基本的なことかもしれませんが、私はそれを理解できないようです。問題は

監視可能な配列「self.product」を持つビュー モデルがあり、以下に示すように、ネストされたモデルからアクセスしたいと考えています。これを実行すると、製品が存在しないというエラーが表示されます。コードは含めていませんが、データを取得して「製品」にプッシュする ajax 呼び出しがあります。また、関数 'test' でクリック バインディングを使用すると、値が出力されます。

「self」のスコープの問題かもしれませんが、マークアップの foreach バインディングで「product」配列を使用しているため、self.product ... を var product に変更することはできません。どうすればこれを達成できますか?

0 投票する
1 に答える
4491 参照

knockout.js - ノックアウト オブザーバブル配列プッシュ 最初のオブジェクトのみを追加

私は観測可能な配列を持っています。(オブジェクト)データにはID、名前、説明があると仮定します

行番号 1 と 2 は正常に動作します。行番号 3 で、デバッグ ポイントが消え、二度と戻ってきません。