vue项目中 自动加载注册组件

Posted 奥特曼 

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue项目中 自动加载注册组件相关的知识,希望对你有一定的参考价值。

使用场景:在开发项目中 经常会注册一些全局公共组件,当项目全部开发完了就会出现下面的这种现象 

 每次都要引入注册非常的麻烦  所以

 webpack 提供 自动引入注册组件

https://webpack.js.org/guides/dependency-management/#require-context

// webpack提供
// context(目录路径,是否加载子目录,加载文件的匹配正则)
const importFn = require.context('./', false, /\\.vue$/)
console.log(importFn.keys())

export default {
  install (app) {
    // 根据keys批量注册
    importFn.keys().forEach(path => {
      // 导入组件
      const component = importFn(path).default
      // 进行注册
      app.component(component.name, component)
    })
  }
}

通过组件的形式注册  记得在main.js中use

解释代码:

context(目录路径,是否加载子目录,加载文件的匹配正则)

const importFn = require.context('./', false, /\\.vue$/)

console.log(importFn.keys()) // 匹配的路径

 

以上是关于vue项目中 自动加载注册组件的主要内容,如果未能解决你的问题,请参考以下文章

Vue自动化注册全局组件脚本

VUE之组件的动态注册和动态加载

vue项目中动态加载路由组件this.$route undefined

vue_element_admain中自动注册全局组件

vue路由自动加载、按组件异步载入vuex以及dll优化

vue中的组件