vue防抖註冊全域性 Vue自動化註冊全域性元件指令碼

2021-10-13 03:47:26 字數 998 閱讀 8514

今天有乙個idea,vue一些元件,可能會全域性都用到,我覺得在main.js寫

vue.component(name, instance)

然後很命令式,寫著也不好看,想著能夠有乙個函式可以指定載入比如components下的檔案,自動完成全域性化註冊,想起來就很帥

放**:

export function autoloadingglobalcomponent() {

const requirecomponent = require.context(

// 其元件目錄的相對路徑

『../components『,

// 是否查詢其子目錄

false,

// 匹配vue字尾檔名的檔案

/\.vue$/

// 遍歷獲取到的檔名,依次進行全域性註冊

requirecomponent.keys().foreach(filename => {

// 獲取元件配置(例項)

const componentconfig = requirecomponent(filename)

// 獲取元件的 pascalcase 命名(eg: myheader)

const componentname = _.upperfirst(

// 獲取駝峰式命名

_.camelcase(

// 剝去檔名開頭的 `./` 和結尾的副檔名 eg: ./food-header.vue -> foodheader

filename.replace(/^\.\/(.*)\.\w+$/, 『$1『)

// 全域性註冊元件

vue.component(

componentname,

// 如果這個元件選項是通過 `export default` 匯出的,

// 那麼就會優先使用 `.default`,

// 否則回退到使用模組的根。

componentconfig.default || componentconfig

vue防抖註冊全域性 vue全域性防抖和節流

防抖處理 立即執行 const on vue.prototype.on vue.prototype.on function event,func 500 on.call this,event,newfunc 防抖處理 最後執行 const on vue.prototype.on vue.protot...

vue防抖註冊全域性 vue全域性防抖和節流

函式防抖 防抖分為兩種 一種是立即執行 頻繁觸發事件,第一次觸發時執行函式,後面觸發不會執行,停止觸發,間隔一定時間之後再觸發事件,函式才會再次執行 另一種是後執行 頻繁觸發事件,事件只會在觸發事件之後間隔定義的時間,函式才會被執行,而且只會執行最後一次觸發的事件。在vue中對click新增防抖處理...

vue防抖註冊全域性 vue全域性防抖和節流

函式防抖 防抖分為兩種 一種是立即執行 頻繁觸發事件,第一次觸發時執行函式,後面觸發不會執行,停止觸發,間隔一定時間之後再觸發事件,函式才會再次執行 另一種是後執行 頻繁觸發事件,事件只會在觸發事件之後間隔定義的時間,函式才會被執行,而且只會執行最後一次觸發的事件。在vue中對click新增防抖處理...