【发布时间】:2019-09-14 23:32:32
【问题描述】:
我正在使用 nuxt.js 开发一个项目,我想实现原子设计方法
所以我目前导入这样的组件
import ButtonStyled from '@/components/atoms/ButtonStyled.vue'
import TextLead from '@/components/atoms/TextLead.vue'
import InputSearch from '@/components/atoms/InputSearch.vue'
但我需要像这样导入
import {
ButtonStyled,
TextLead,
InputSearch
} from '@/components/atoms'
我离得越近,
/atoms/index.js
const req = require.context('./', true, /\.vue$/)
const modules = {}
req.keys().forEach(fileName => {
const componentName = fileName.replace(/^.+\/([^/]+)\.vue/, '$1')
modules[componentName] = req(fileName).default
})
export const { ButtonStyled, TextLead } = modules
但我还是静态定义导出变量名,我需要根据文件夹内的组件来定义动态
注意:我不能使用
export default modules
如果我使用上面的代码sn-p我将无法导入我需要的方式,即:
import { ButtonStyled } from "@/components/atoms"
【问题讨论】:
标签: javascript node.js vue.js nuxt.js atomic-design