Не знаю как наиболее понятно объяснить мою проблему. Попробую расписать по пунктам
1. Устанавливаю vue.js командой
vue create <name>
2. Устанавливаю зависимость для наглядности
npm i mdi-vue
3. Запускаю сервер
npm run serve
Видим, что подключилось ~150 модулей. Ок
4. В документации к mdi-vue сказано, что для подключения иконок необходимо импортировать и регистрировать в ручную каждую иконку.
Я решаю создать компонент-обертку, который будет подключать эти иконки за меня.
components/icon.vue
<template>
<component :is="getIcon" />
</template>
<script>
export default {
props: {
name: {
type: String,
required: true
}
},
computed: {
getIcon () {
return () => import(`mdi-vue/${this.name}`) // Проблема здесь
}
}
}
</script>
5. Регистрирую этот компонент глобально
Vue.component('ui-icon', () => import('@/components/icon.vue')
6. Снова запускаю
npm run serve
Вуаля. Теперь у нас подключается 20000+ модулей (иконок). Как так получилось?