Muszę wiedzieć, jak wyzwolić aktualizację dla , gdy observable
zostanie zmieniona wewnątrz .KnockoutJS observableArray do aktualizacji, gdy wewnętrzna obserwowalna zostanie zmieniona
Mam observableArray
, który reprezentuje drzewo binarne. Używam funkcji mapowania pamięci, aby uzyskać i ustawić wartości w tablicy, więc musi być zrównoważona, nawet jeśli może zawierać tylko pusty observable
. Na przykład. węzły() [9] może zerowa, ale gdy ten węzeł jest aktualizowany nazwałbym nodes()[9](set new value)
i trzeba wyzwolić observableArray
zaktualizować
zastąpienie jest idealne tutaj. Inną opcją jest użycie splotu, aby wyciągnąć przedmiot, a następnie wcisnąć element zastępujący. Ale znowu, zastąpienie jest lepszym rozwiązaniem. –
Tak, ale jeśli użyłem splotu, w jaki sposób wstawiłbym go z powrotem do prawidłowej pozycji? – Ryan
splice można dodawać, usuwać lub dodawać i usuwać elementy z dowolnych pozycji. zobacz https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/splice. na przykład 'tablica.splice (3, 1," cześć ")' implements "zamień" w czystym javascript. KO oferuje dodatkowe metody wygody na obserwowalneArrays. innym przykładem tylko dodanie elementów ad danej pozycji jest 'tablica.splice (3, 0," cześć "," świat ")'. – saurus