>  기사  >  웹 프론트엔드  >  Vue에서 배열을 수정할 때 페이지가 렌더링되지 않는 문제를 다음 표를 통해 해결하세요.

Vue에서 배열을 수정할 때 페이지가 렌더링되지 않는 문제를 다음 표를 통해 해결하세요.

亚连
亚连원래의
2018-05-31 16:38:291772검색

이제 Vue에서 배열을 수정하면 페이지가 렌더링되지 않는 문제를 다음 표를 통해 해결하는 글을 공유하겠습니다. 매우 좋은 참고 가치가 있으며 모든 사람에게 도움이 되기를 바랍니다.

Vue가 모델 상태의 변화를 모니터링할 수 있는 이유는 JavaScript 언어 자체가 객체 상태의 변화를 모니터링하는 Proxy 또는 Object.observe() 메커니즘을 제공하기 때문입니다. 그러나 배열 요소의 할당을 직접 모니터링할 수 있는 방법은 없습니다. 따라서 배열 요소에 값을 직접 할당하면

vm.todos[0] = {
  name: 'New name',
  description: 'New description'
};

로 인해 Vue가 뷰를 업데이트할 수 없게 됩니다.

올바른 방법은 배열 요소에 값을 할당하는 것이 아니라 업데이트하는 것입니다.

vm.todos[0].name = 'New name';
vm.todos[0].description = 'New description';

또는 splice() 메서드를 통해 요소를 삭제한 후 다른 요소를 추가하여 " 할당":

var index = 0;
var newElement = {...};
vm.todos.splice(index, 1, newElement);

Vue는 배열의 스플라이스, 푸시, 이동 해제 및 기타 메서드 호출을 모니터링할 수 있으므로 위 코드가 뷰를 올바르게 업데이트할 수 있습니다.

위 내용을 정리했습니다. 앞으로 도움이 되길 바랍니다.

관련 기사:

사용을 사용하여 Vue 전역 구성 요소 및 전역 지침을 등록하는 방법

vue.js가 CSS 라이브러리(elementUi)를 가져오는 방법에 대한 간략한 설명

JS 코드를 사용하여 QR 코드 및 함수 생성(자세한 튜토리얼)

위 내용은 Vue에서 배열을 수정할 때 페이지가 렌더링되지 않는 문제를 다음 표를 통해 해결하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.