这是github源码中的查找元素方法
export function findElm (component, pageVm) {
if (!pageVm) {
return console.error('page is not ready')
}
if (!component) {
return pageVm.$el
}
if (__PLATFORM__ === 'app-plus') {
if (typeof component === 'string') {
const componentVm = findVmById(component, pageVm)
if (!componentVm) {
throw new Error(`Not Found:Page[${pageVm.$page.id}][${component}]`)
}
return componentVm.$el
}
}
return component.$el
}
在我们写的组件或者页面的报错
Error: Not Found:Page[2][-1,10] at view.umd.min.js:1
分析:
- [2]的2是getCurrentPages()页面数组的第2个
- [-1,10]是页面的$id,可通过getCurrentPages()[1].$vm.$id 查询,通常为-1
- typeof _$id 为数字是不会报错的,报错时component为“-1,10”
来源:
当我们执行一些查询元素宽高方法时,找不到元素。
可能是元素加载顺序的问题,比如在父组件的mounted周期执行了查询子组件高度的方法,但子组件中的mounted生命周期并没有完全执行完,导致子组件实际上还未渲染完。
1 个评论
要回复文章请先登录或注册
2***@qq.com