찾다

 >  Q&A  >  본문

angular.js - angular1.x,dom操作与ng数据操作的冲突问题

http://codepen.io/anon/pen/JXogBj?editors=1010

如上面的代码所示,
点击1:dom操作再点击2:ng操作,标签的值没改,除非点击3:ng操作再点击2:ng操作
有什么方法可以让2:ng操作总是生效?

仅有的幸福仅有的幸福2747일 전710

모든 응답(1)나는 대답할 것이다

  • 怪我咯

    怪我咯2017-05-15 17:01:06

    먼저 이유를 설명하겠습니다

    • 1: DOM 작업은 View 값을 직접 변경하지만 $scope.name은 여전히 ​​123이고 변경되지 않았습니다. 이것은 매우 중요합니다

    • 2: ng 작업, $scope.name은 여전히 ​​123이고 현재 값 123이 할당되어 있으므로 실제로는 아무 작업도 수행하지 않습니다

    • 3: ng 연산, $scope.name 에 124 값이 할당됩니다. 이때 이름이 변경되고, 뷰의 값을 업데이트하기 위해 Angle이 돌아갑니다. 값이 동일하기 때문에 효과를 볼 수 없습니다. . 그런 다음 2:ng 작업을 클릭하면 $scope.name에 값 123이 할당됩니다. 변경되면 보기 값이 동기적으로 업데이트됩니다.

    약간 복잡해요

    보충제

    으아악

    회신하다
    0
  • 취소회신하다