时间:2021-05-26
最近仿写一个项目,如下目录,base内部都是一些基础的组件,但是并没有在main.js 中使用常规的方式去全局注册的,刚开始还不明白没有注册的组件怎么在全局使用的
项目目录
//main.jsimport global from './utils/global'Vue.use(global)//解释:如果自动化的代码直接写在一个js文件中直接全局的引入main.js 中也是没有问题的,//但是这里是按照自定义插件的方式写下global文件中的就要使用vue的use方法自定义global插件,通过全局的Vue.use(global)来调用
//global.jsimport { Input, Dialog,} from "element-ui"import VueLazyload from "vue-lazyload"import Meta from 'vue-meta'import * as utils from "./index"export default { install(Vue) { const requireComponent = require.context( "@/base", true, /[a-z0-9]+\.(jsx?|vue)$/i, ) //console.log(requireComponent); //console.log(requireComponent.keys(),) //console.log(requireComponent.resolve,) //console.log(requireComponent.id,) //console.log(requireComponent.resolve("./tabs.vue")) //console.log(requireComponent("./tabs.vue")); //console.log(requireComponent("./tabs.vue") === require("@/base/tabs")); // 批量注册base组件 requireComponent.keys().forEach(fileName => { const componentConfig = requireComponent(fileName) const componentName = componentConfig.default.name if (componentName) { Vue.component(componentName, componentConfig.default || componentConfig) } }) Vue.prototype.$ELEMENT = { size: "small" } Vue.prototype.$utils = utils Vue.use(Input) Vue.use(Dialog) Vue.use(Meta) },}解析 require.context
const requireComponent = require.context( "@/base", true, /[a-z0-9]+\.(jsx?|vue)$/i, )require.context返回一个webpack的上下文环境 , 返回的是一个函数,
有三个参数:
总结:
看下面两幅图片解析的更清晰
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
gulp是一个自动化构建工具,开发者可以用它来自动执行一些常见的任务。这里以我之前做的一个demo为例,简要介绍如何使用gulp实现前端工程自动化。项目结构其中
GO1.7之后,新增了context.Context这个package,实现goroutine的管理。Context基本的用法参考GOLANG使用Context
在分析哪些方面需要实现自动化时,人们往往希望将所有软件都自动化。可问题在于,自动化会在构建、配置、管理和修复网站软件组件的层次上,再增加一层抽象。自动化只在最顶
自动化办公平台的实现意义。实现高度自动化。含有电子笔记的自动化办公可以有效的减少劳动力,并可以将企业各部门有机的凝聚起来,另外还省掉了根多不必要的过场模式,可以
按计算机应用分类来说,OA办公自动化应属于计算机应用的信息处理。 办公自动化(officeAutomation,OA)是在设备、通信逐步实现自动化的基础上,通