.throttle是lodash中的節(jié)流函數(shù),.debounce是lodash中的防抖函數(shù)鬼譬。
具體作用可以直接看官方文檔椒舵。
在vue中具體怎么用
import _ from 'lodash'
export default{
methods:{
click:_.throttle(function(){
console.log('test')
console.log(this)
},1000)
}
}
import _ from 'lodash'
export default{
methods:{
onUpdateNote: _.debounce(function() {
this.updateNote({ noteId: this.curNote.id, title: this.curNote.title, content: this.curNote.content })
.then(data => {
this.statusText = '已保存'
}).catch(data => {
this.statusText = '保存出錯(cuò)'
})
}, 300)
}
在lodash的throttle伞鲫,debounce方法中,可以直接使用function,而且無(wú)需重新指向this,在函數(shù)內(nèi)部中已經(jīng)做了apply,所以這里的this指向的就是vue實(shí)例,對(duì)已有函數(shù)的外面包一層.throttle/.debounce就可以了。