關於JS報錯:Cannot read property 'getAttribute' of null問題
出錯原因
在vue中使用echarts時,在圖表元素並未加載的情況下進行eharts.init(),會發生此錯誤,因為eharts並未找到該元素,故無法對其進行渲染。
echarts.js引用放在head中或者放在body中HTML代碼的前面了,造成加載時阻塞后面的html。
解決方案
- 查看填寫的id是否真實存在,若不存在,當然無法根據getElementById來找到該元素;
- 將echarts.js的引用放在之前就可以了,完美解決;
拓展
不僅是在echarts時,只要是出現對元素操作時均有可能報此錯誤,表示未找到指定的元素。
mounted里面執行的方法放到this.$nextTick(function(){})中,必須保證dom渲染完成完畢才可以獲取dom節點。
mounted: function(){
this.$nextTick(function() {
this.getPlayTimes();
})
},
另外,這個報錯是錯誤回調里彈出來的,注釋掉alert就好了。