zoukankan      html  css  js  c++  java
  • 动态引入全局组件

    大致思路: 

      通过  webpack中require.context的作用 读取到 指定文件夹下文件名 , 及export default 出的内容 , 然后在vue全局注册

     

    这篇讲的还行吧webpack中require.context的作用

    目录结构

    全局组件和global.js 在同级目录下

     bus.js可以忽略

    Global.vue 为全局组件

    global.js

    import Vue from "vue";
    //首字母大写
    function changeStr(str) {
        return str.charAt(0).toUpperCase() + str.slice(1)
    }
    //require.context()=>动态引入文件
    //1.路径
    //2.是否匹配子级文件
    //3.规则 
    
    const requireComponent = require.context('.', false, /.vue$/); //可以匹配指定基础组件文件名的正则表达式
    
    requireComponent.keys().forEach(fileName => {
        const config = requireComponent(fileName);
        console.log(fileName)
        const componentName = changeStr(
            fileName.replace(/^.//, '').replace(/.w+$/, '')
        )
        console.log(config.default)
        Vue.component(componentName, config.default || config)
    })

    然后再main.js中引入

    import './common/global.js'

    然后就可以在全局使用 Global.vue

  • 相关阅读:
    字串变换
    重建道路
    poj3278 Catch That Cow
    机器人搬重物
    [HNOI2004]打鼹鼠
    曼哈顿距离
    邮票面值设计
    poj1101 The Game
    解决了一个堆破坏问题
    模型资源从无到有一条龙式体验
  • 原文地址:https://www.cnblogs.com/wxyblog/p/14954910.html
Copyright © 2011-2022 走看看