반응형
Vue 상세 감시가 개체 속성 변경에 대해 작동하지 않음
나는 가지고 있다customer
오브젝트를 초기 데이터로 사용합니다.텍스트 필드에는 누군가가 입력하기 시작하면 오브젝트에 다른 키가 추가됩니다.새로운 경우key
이 추가되면 워처는 정상적으로 기동되지만 키가 기존 값에서 편집된 경우 워처는 정상적으로 기동하지 않습니다.
그래서 제가 주소를 입력하러 가면key
street_address1
에 추가됩니다.customer
감시자가 발사하도록 하는 거죠그런데 주소 편집을 시작하면 더 이상 안 나와요.
템플릿
<v-container>
<v-col cols="12">
<h2>Contact</h2>
<div>Email Adderss</div>
<v-text-field
outlined
v-model="customer.email"
>
</v-text-field>
</v-col>
<v-col cols="12">
<v-row>
<v-col cols="6">
<div>First</div>
<v-text-field
outlined
v-model="customer.first"
>
</v-text-field>
</v-col>
<v-col cols="6">
<div>Lasts</div>
<v-text-field
outlined
v-model="customer.last"
>
</v-text-field>
</v-col>
</v-row>
</v-col>
<v-col cols="12">
<div>Shipping Address Line 1</div>
<v-text-field
outlined
v-model="customer.street_1"
>
</v-text-field>
</v-col>
<v-col cols="12">
<div>Shipping Address Line 2</div>
<v-text-field
outlined
v-model="customer.street_2"
>
</v-text-field>
</v-col>
</v-container>
대본
data() {
return {
customer: {}
};
},
watch: {
customer(newData) {
console.log("test", newData)
},
deep: true
},
구문상의 문제입니다.그deep
재산이 세컨드 워치인 것처럼 워치 외부에 잘못 배치되어 등록되지 않았습니다.
에 오브젝트 구문을 사용합니다.customer
watch. 오브젝트에는 다음 두 가지 속성이 있어야 합니다.
- a
handler
method(documents에서와 같이 "method"라는 이름을 붙여야 함) - 그
deep
소유물
watch: {
customer: {
handler (newData) {
console.log("test", newData)
},
deep: true
}
}
또, 이 파일에는,immediate: true
필요한 경우 속성watch
컴포넌트가 처음 생성될 때 실행됩니다.
언급URL : https://stackoverflow.com/questions/66374708/vue-deep-watch-not-working-on-object-property-changes
반응형
'programing' 카테고리의 다른 글
업데이트 시 vuex 상태 업데이트 UI를 만드는 방법 (0) | 2022.07.16 |
---|---|
Vue TypeError _vm이 함수가 아닙니다. (0) | 2022.07.16 |
휴지 상태 수정 방법초기화예외: 역할 모음을 느리게 초기화하지 못했습니다. 프록시를 초기화할 수 없습니다. 세션 없음 (0) | 2022.07.10 |
오류: java: javacTask: 소스 릴리스 8에는 타깃 릴리스 1.8이 필요합니다. (0) | 2022.07.10 |
Vuejs에서 디스패치 처리 후 $emit에 문의 (0) | 2022.07.10 |