這個批量引入組件的方法,挺酷

我們在寫vue組件的時候,如果在一個組件裏引入多個組件,一般的寫法是這樣的

完全沒毛病,但是這樣的寫法就有點累贅,每次新增一個組件又要添加多處,原來現在已經有更方便的寫法了,實踐了一下,非常nice

const routes = {};
const contexts = require.context('../SubComponets', false, /\.vue$/);
contexts.keys().forEach(key => {  
  let name = key.slice(2, -4); 
  console.log(name);
  routes[name] = contexts(key).default || contexts(key);
})
 components: {
    ...routes
  },

代碼解析:根據自己要引入的組件寫require.context()的參數,第一個爲路徑;第二個爲是否查找子文件夾;第三個爲組件名字正則表達式匹配
然後可以遍歷組件的名稱,掛載到組件上。也可以通過過濾name的方法,掛載需要的組件,非常實用~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章