두 개의 관찰 가능한 배열에서 계산 된 값 가져 오기

Skmasq

나는 많은 스레드를 읽었으며 두 개의 관찰 가능한 배열을 계산하고 추가 / 제거를 추적하고 계산 된 관찰 가능한 항목을 업데이트 할 수있는 방법에 대한 정보가 충분하지 않습니다. 두.

다음은 JsFiddle입니다.

다음은 그 뒤에있는 코드입니다.

var VM = function () {
    var self = this;

    self.first = ko.observableArray([{
        Id: 1,
        name: "john"
    }, {
        Id: 3,
        name: "steve"
    }, {
        Id: 5,
        name: "roger"
    }]);

    self.second = ko.observableArray([{
        Id: 2,
        name: "laker"
    }, {
        Id: 4,
        name: "don"
    }, {
        Id: 6,
        name: "idiot"
    }]);

    self.both = ko.computed(function () {
        return self.first().concat(self.second());
    });

    self.removePerson = function (v) {
        (self.first().indexOf(v) !== -1) ? ko.utils.arrayRemoveItem(self.first(), self.first()[self.first().indexOf(v)]) : ((self.second().indexOf(v) !== -1) ? ko.utils.arrayRemoveItem(self.second(), self.second()[self.second().indexOf(v)]) : console.log("Item doesnt exist"));
    }
}

ko.applyBindings(new VM());

질문

어떻게 만들 수 있습니다 computed에 대한 모든 변경 후 갱신 first또는 second?

Nemesv

당신의 계산은 괜찮고, 당신 removePerson은 잘못 작동합니다.

따라서 UI에서 변경 사항을 보지 마십시오. UI를 사용할 때 ko.utils.arrayRemoveItem기본 배열에서 항목을 제거하므로 KO는 변경 사항을 알지 못하므로 계산 된 내용을 업데이트하지 않습니다.

valueHasMutated()제거 후 배열에서을 호출하도록 수정하는 한 가지 방법 은 계산 된 변경을 트리거합니다. ( 데모 )

또는 대신 myObservableArray.remove(someItem)방법 ( doc 참조 )을 사용할 수 있습니다 .

self.removePerson = function (v) {
    (self.first().indexOf(v) !== -1) 
    ?  self.first.remove(v) 
    :  self.second.remove(v)
}

데모 JSFiddle.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

관찰 가능한 배열에서 계산 된 관찰 가능한 배열

분류에서Dev

관찰 가능한 배열에서 개체 가져 오기

분류에서Dev

angular2 nativescript의 관찰 가능한 배열에서 문자열 값 가져 오기

분류에서Dev

두 개의 관찰 가능한 항목을 두 개의 초기 관찰 가능한 값의 매핑 된 값으로 다른 관찰 가능한 개체로 변환하는 방법은 무엇입니까?

분류에서Dev

관찰 가능한 배열 필터링에서 첫 번째 값 가져 오기

분류에서Dev

Rx Java에서 연결 된 map () 호출의 두 번째 관찰 가능 항목 가져 오기

분류에서Dev

2 개의 다른 열 합계의 최대 값과 관련된 열 A에서 값 가져 오기

분류에서Dev

두 문자열이 포함 된 문자열 배열에서 가능한 모든 값 가져 오기 C #

분류에서Dev

"beforeChange"구독에서 관찰 가능 항목의 새 값 가져 오기

분류에서Dev

한 행의 동일한 열에서 계산 된 값을 가져 오는 쿼리

분류에서Dev

쉼표로 구분 된 문자열에서 관찰 가능한 배열의 모든 필드 값 선택

분류에서Dev

연관된 배열의 각 키에서 하나의 값 가져 오기

분류에서Dev

MySQL : 범주별로 구성된 두 개의 열에서 합계 가져 오기

분류에서Dev

Rxjs : 값에서 관찰 가능 또는 관찰 가능 생성의 속기

분류에서Dev

SQL Server의 두 열에서 계산 결과 가져 오기

분류에서Dev

CDI, 관찰자 내부의 한정자에서 값 가져 오기

분류에서Dev

어떻게 두 개의 관찰 가능한 순차적에서 값을받을 수 있나요?

분류에서Dev

여러 관찰 가능 값에서 관찰 가능 만들기

분류에서Dev

동일한 테이블에서 두 개의 값 가져 오기

분류에서Dev

계산 된 관찰 가능 항목을 사용한 개체 범위 지정

분류에서Dev

Knockout JS 설정 관찰 가능한 배열 객체 속성 값의 드롭 다운에 대한 초기 값

분류에서Dev

mongoDB 값에 관계없이 중첩 된 값 가져 오기

분류에서Dev

녹아웃 라디오 버튼 값의 값을 관찰 가능한 배열에 저장

분류에서Dev

두 배열 값을 비교 한 후 배열에서 잘못된 요소 가져 오기

분류에서Dev

mySQL select에서 두 개의 계산 된 값 나누기

분류에서Dev

다른 열의 특정 값과 관련된 Datagridview에서 값 가져 오기 C #

분류에서Dev

계산 된 반복 필드의 관련 값에서 레코드 ID를 가져 오는 Filemaker

분류에서Dev

Spark 1.6 / Scala에서 집계와 관련된 열 값 가져 오기

분류에서Dev

관찰 가능한 배열의 녹아웃 액세스 개체 값

Related 관련 기사

  1. 1

    관찰 가능한 배열에서 계산 된 관찰 가능한 배열

  2. 2

    관찰 가능한 배열에서 개체 가져 오기

  3. 3

    angular2 nativescript의 관찰 가능한 배열에서 문자열 값 가져 오기

  4. 4

    두 개의 관찰 가능한 항목을 두 개의 초기 관찰 가능한 값의 매핑 된 값으로 다른 관찰 가능한 개체로 변환하는 방법은 무엇입니까?

  5. 5

    관찰 가능한 배열 필터링에서 첫 번째 값 가져 오기

  6. 6

    Rx Java에서 연결 된 map () 호출의 두 번째 관찰 가능 항목 가져 오기

  7. 7

    2 개의 다른 열 합계의 최대 값과 관련된 열 A에서 값 가져 오기

  8. 8

    두 문자열이 포함 된 문자열 배열에서 가능한 모든 값 가져 오기 C #

  9. 9

    "beforeChange"구독에서 관찰 가능 항목의 새 값 가져 오기

  10. 10

    한 행의 동일한 열에서 계산 된 값을 가져 오는 쿼리

  11. 11

    쉼표로 구분 된 문자열에서 관찰 가능한 배열의 모든 필드 값 선택

  12. 12

    연관된 배열의 각 키에서 하나의 값 가져 오기

  13. 13

    MySQL : 범주별로 구성된 두 개의 열에서 합계 가져 오기

  14. 14

    Rxjs : 값에서 관찰 가능 또는 관찰 가능 생성의 속기

  15. 15

    SQL Server의 두 열에서 계산 결과 가져 오기

  16. 16

    CDI, 관찰자 내부의 한정자에서 값 가져 오기

  17. 17

    어떻게 두 개의 관찰 가능한 순차적에서 값을받을 수 있나요?

  18. 18

    여러 관찰 가능 값에서 관찰 가능 만들기

  19. 19

    동일한 테이블에서 두 개의 값 가져 오기

  20. 20

    계산 된 관찰 가능 항목을 사용한 개체 범위 지정

  21. 21

    Knockout JS 설정 관찰 가능한 배열 객체 속성 값의 드롭 다운에 대한 초기 값

  22. 22

    mongoDB 값에 관계없이 중첩 된 값 가져 오기

  23. 23

    녹아웃 라디오 버튼 값의 값을 관찰 가능한 배열에 저장

  24. 24

    두 배열 값을 비교 한 후 배열에서 잘못된 요소 가져 오기

  25. 25

    mySQL select에서 두 개의 계산 된 값 나누기

  26. 26

    다른 열의 특정 값과 관련된 Datagridview에서 값 가져 오기 C #

  27. 27

    계산 된 반복 필드의 관련 값에서 레코드 ID를 가져 오는 Filemaker

  28. 28

    Spark 1.6 / Scala에서 집계와 관련된 열 값 가져 오기

  29. 29

    관찰 가능한 배열의 녹아웃 액세스 개체 값

뜨겁다태그

보관