报错内容
xxx is not defined at d.onUpdate:modelValue.s.<computed>.s.<computed>
html代码
<template>
<el-cascader
v-model="ywmcbm"
:disabled="isReadOnly"
:props="{ label: 'typeName', value: 'typeCode', emitPath: false }"
:options="ywList"
:show-all-levels="false"
style="width: 100%;"
@change="change"
></el-cascader>
</tempalte>
// ts + setup
interface YwmcList {
typeName: string
typeCode: string
children: YwmcList[]
[key: string]: any
}
interface ParamsObj {
id: string
slr: string
slsj: string
sxbm: string
sxmc: string
ywxlbm: string
ywxlmc: string
}
interface Props {
modelValue: string
ywmcbm: string
isReadOnly: boolean
ywmcList: YwmcList[]
sxmcList: YwmcList[]
specialField: any
itemYwlx: string
showBtn: boolean
}
const instance = getCurrentInstance()
const props = withDefaults(defineProps<Props>(), {
ywmcbm: '',
modelValue: '',
isReadOnly: false,
showBtn: false
})
const emit = defineEmits(['update:ywmcbm','update:modelValue','sureSave'])
const change = (val: string) => {
emit('update:modelValue', '')
emit('update:ywmcbm', val)
}
触发change事件时候,线上会报错
ywmcbm is not defined at d.onUpdate:modelValue.s.<computed>.s.<computed>
莫名其妙的问题,本地开发没有任何问题,测试反馈页面无法点击的时候,还以为线上不是最新的,更新线上后问题还在,才发现这问题有些棘手啊
解决方法:
const ywmcbm = computed({
get: () => props.ywmcbm,
set: (val) => emit('update:ywmcbm', val)
})