Я использую vue-router внутри своего проекта, который работает с библиотекой, которая, к сожалению, больше не находится в активной разработке.Мне нужно было добавить туда несколько вещей, поэтому я скачал исходный текст, отредактировал его сам, а затем встроил в папку «externals» моего проекта.
Теперь, пока проект не использовал интерфейсный маршрутизатор, все работало нормально, но в последнее время я реализовал vue-router с компонентами с отложенной загрузкой, и все стало немного сложнее.
БиблиотекаЯ говорил о сохранении внутри @/externals/date-picker
.Внутри моего лениво загруженного компонента я импортирую его, используя es6 import:
import DatePicker from '@/externals/date-picker';
, что вызывает ошибку внутри vue-router
:
Не удалось разрешить асинхронный компонент по умолчанию: TypeError: Cannotустановить свойство 'vue-date-picker' из неопределенного
Я понятия не имею, что происходит, но кажется, что он не может добавить средство выбора даты к module.exports
.
Я почти уверен, что должен быть способ загрузки внешних файлов, даже если они загружены лениво.Итак, мой вопрос, как я могу добавить внешний файл / пакет в мой лениво загруженный компонент?Заранее спасибо.
КОД
// router.js
import Vue from 'vue';
import Router from 'vue-router';
Vue.use(Router);
export default new Router({
mode: 'history',
base: process.env.BASE_URL,
routes: [
{
path: '/something',
name: 'something',
title: 'something',
component: () => import(/* webpackChunkName: "something" */ './views/Component.vue')
}
]
});
// Component.vue
<script>
import DatePickerOriginal from "@/external/date-picker";
export default {
components: {
DatePickerOriginal
}
};
</script>
И исходный код @/external/date-picker
почти такой же, как здесь (ну,инструменты сборки были такими же, и само приложение, скорее всего, не вызывает проблемы).Также было бы неплохо еще раз указать, что приложение не находится в папке node_modules
с другими пакетами, а загружено из @/externals/date-picker
.