require.context

import ElementUI from "element-ui";
import "element-ui/lib/theme-chalk/index.css";
import Vue from "vue";

const routes = {};

const requireComponent = require.context("./src", true, /index\.js$/);

requireComponent.keys().forEach((key) => {
  const name = key.slice(2, -9);
  console.log(name);
  if (/^.\/[A-Za-z0-1]+\/index.js$/.test(key)) {
    routes[name] = requireComponent(key).default || requireComponent(key);

    Vue.component(name, routes[name]);
  }
});

// 定义 install 方法
const install = function (Vue, option = {}) {
  if (install.installed) return;
  install.installed = true;
  Vue.use(ElementUI, option);
};
if (typeof window !== "undefined" && window.Vue) {
  install(window.Vue);
}
// console.log(...Object.values(routes));
export default {
  // 导出的对象必须具备一个 install 方法
  install,
  ...Object.values(routes)
};

posted @   7c89  阅读(40)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
点击右上角即可分享
微信分享提示