[Vue warn]: Error in callback for immediate watcher "data"를 해결하는 방법
2655 단어 errorMessageVue.jserrorElementUI
Element UI
htps : ///에멘 t. 네. 이오 / # / 엔우 S
덧붙여서 사용하고 있던 것은, Element UI를 베이스로 한 Vue-admin-element였습니다.
Vue-admin-element
알지 못하는 분은 아래에서 놀 수 있으므로 봐주세요.
htps : // 팬지 아치. 기주 b. 이오 / ゔ 에- 에멘 t- d dmin / # / ぉ 긴? Ree ct = % 2F sh shore rd
원인을 넷상에서 찾는 것도 좀처럼 발견되지 않았습니다만 어떻게든 해외의 기사를 찾아 해결했습니다. 일본어 기사가 없었기 때문에 여기에 기재하기로 했습니다.
해결 방법
상황 재현
Element UI에서 찾은 테이블을 Vue-admin-element 내에서 정확히 아래와 같이 사용하려고 했을 때였습니다.
<template>
<div>
<el-table
:data="tableData"
style="width: 100%;margin-bottom: 20px;"
row-key="id"
border
default-expand-all>
<el-table-column
prop="date"
label="date"
sortable
width="180">
</el-table-column>
<el-table-column
prop="name"
label="Name"
sortable
width="180">
</el-table-column>
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
tableData: null
}
}
}
</script>
테이블내에 표시하는 데이터를 API로 취득하는 것을 상정하고 있었으므로, script 태그내의 변수 tableData를 선언할 필요가 있습니다만 (오마케 참조),
data() {
return {
tableData: null
}
}
했습니다.
이 시점에서 콘솔을 살펴보면 위 이미지에 오류가 발생했을 것입니다.
해결 방법
tableData에 null 대신 빈 배열을 전달하면 오류가 훌륭하게 사라집니다.
data() {
return {
tableData: []
}
}
원인 고찰
Vue-admin-element내의 테이블이라고 null로 동작하고 있었습니다만, Element UI 페이지로부터 이식한 파트에서는 이러한 에러가 나왔다고 생각합니다.
default에서 변수를 선언할 때 변수에 저장되는 데이터의 형식이 배열이거나 객체인지 걱정할 필요가 있는 경우가 존재할지도 모릅니다.
주) 에러 해결 방법을 적어 준 원 사이트입니다만, 다시 찾을 수 없었기 때문에 링크를 붙일 수 없었습니다. 어떻게 거기에 도착했는지도 더 이상 기억할 수 없습니다.
오마케
data() {
return {
}
}
뭐라고 쓰면
[Vue warn]: Property or method "tableData" is not defined on the instance but referenced during render
화가납니다.
Reference
이 문제에 관하여([Vue warn]: Error in callback for immediate watcher "data"를 해결하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Ksk8358/items/e008f795fac16f389709텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)