背景
1、vue中data定义一个id属性,使用Date.now();创建随机值,id 取不到
data: {
id: `${Date.now()}`
},
// 模板中使用
<vue-image-upload :id="id" @onUploadChange="onUploadChange"/>
// vue-image-upload组件中this.id取不到
mounted() {
const me: any = this;
// id 取不到
const upload: any = document.querySelector(`#${me.id}`);
},
2、直接写死
// 模板中使用
<vue-image-upload :id="`${Date.now()}`" @onUploadChange="onUploadChange"/>
报错:Failed to execute ‘querySelector’ on ‘Document’: ‘#1644394448898’ is not a valid selector.
经查:所有 ID 中必须是唯一的,并且必须包含至少一个字符。该值不得包含任何空格字符。
因此修改为:
data: {
id: `upload-${Date.now()}`
}