let components = {}; const componentsFiles = require.context('./', true, /\.vue/); componentsFiles.keys().forEach(path => { const component = componentsFiles(path); components[component.default.name] = component.default; }); // 给组件库配置install方法 const install = function (Vue, opts = {}) { Object.values(components).forEach(component => { // 组件前缀 const prefix = opts.name || 'zui'; // 配置组件名称 const name = prefix + component.name; component.name = name; // 给每个子组件配置install方法 component.install = function (Vue) { Vue.component(name, component); }; // 将每个子组件注册为全局组件 Vue.component(name, component); }); }; export default { install, ...components, };