반응형
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재산이 세컨드 워치인 것처럼 워치 외부에 잘못 배치되어 등록되지 않았습니다.
에 오브젝트 구문을 사용합니다.customerwatch. 오브젝트에는 다음 두 가지 속성이 있어야 합니다.
- a
handlermethod(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 |