this value was evaluated upon first expanding节点数组无法遍历问题VUE
遇到问题需要在页面渲染完成之后获取文档标题的scrollTop用来监听计算活动菜单项。在mounted中执行获取const elements = document.querySelectorAll('className');console.log(elements);elements.map(...)发现提示错误.map is not function, 通过打印发现数组发现 this value
·
遇到问题
需要在页面渲染完成之后获取文档标题的scrollTop
用来监听计算活动菜单项。在mounted
中执行获取
const elements = document.querySelectorAll('className');
console.log(elements);
elements.map(...)
发现提示错误.map is not function
, 通过打印发现数组发现 this value was evaluated upon first expanding, that maybe change since then
。然后发现不论使用Array.from
或者[...elements]
或者 JSON.parse(JSON.stringfify(elements))
都无法获取到里面的数据,但是打印台是可以看见的。
文档内容通过v-html
渲染的
分析原因
上面错误提示翻译过来就是,当前数值是在第一次展开的时候计算得出的,这个值是随时变化的。所以感觉应该是执行顺序问题
解决方案
最后通过将执行顺序mounted
挪到updated
里面就可以了,如果还不行在执行前加上this.$nextTick
更多推荐
已为社区贡献3条内容
所有评论(0)