1.v-if和v-show的區別
v-if每次都會重新刪除或創建元素;v-show每次不會重新進行DOM的刪除和創建操作,只是切換了元素的 display:none 樣式
2.重新渲染子組件:當v-if內的條件爲false時,組件就會結束渲染,然後再讓它爲True,就可以重新加載了,但是要注意,不能直接將變量改爲false後立即改爲true,需要在下一個事件循環“tick”後再修改,因爲dom異步更新要在下一個“tick”更新。
<v-SurveyViewer v-if="loadSurvey">
</v-SurveyViewer>
this.loadSurvey = false
this.$nextTick(()=>{
this.loadSurvey = true
})
3.如果less-loader在3.x及以上,需要給如下配置
//vue.config.js
module.exports = {
css: {
loaderOptions: {
less: {
javascriptEnabled: true//必須要有該配置
}
}
}
4.在vue中使用lodash
//第一種,_這種的引入是吧所有的方法都引入進來了
import _ from 'lodash';
_.add('xxx')直接用
//第二種,這種只是從庫中引入了其中的一個方法
import { add } from 'lodash'
5.關於生命週期created和mounted
created:在模板渲染成html前調用,即通常初始化某些屬性值,然後再渲染成視圖。
mounted:在模板渲染成html後調用,通常是初始化頁面完成後,再對html的dom節點進行一些需要的操作。
其實兩者比較好理解,通常created使用的次數多,而mounted通常是在一些插件的使用或者組件的使用中進行操作,比如插件chart.js的使用: var ctx = document.getElementById(ID)
;通常會有這一步,而如果你寫入組件中,你會發現在created中無法對chart進行一些初始化配置,一定要等這個html渲染完後纔可以進行,那麼mounted就是不二之選。