Vue CLI dynamici c импорт из модуля проекта - PullRequest
1 голос
/ 16 апреля 2020

Я знаю, что можно импортировать компонент из объединенного файла веб-пакета, как это

import {componentA, componentB} from '../component.bundle';

Можно ли добиться этого так же, как импорт Dynami c, например,

const url = '${window.location.origin}/assets/default/js/bundle/vue_data.bundle.js';
        this.getAxiosInstance().get(url).then(response => {
                const {Add, Edit, Filter, View} =  () => import(response.data);
        });

Если да, пожалуйста, как? Спасибо

1 Ответ

1 голос
/ 16 апреля 2020

Да, используя dynamici c import :

Чтобы динамически импортировать модуль, ключевое слово import может быть и вызываться как функция . При таком способе он возвращает обещание.

Я предполагаю, что из вашего URL-адреса ваш импорт находится в каталоге assets вашего проекта (т. Е. Sr c> assets) и не на самом деле на внешнем домене. В этом случае вам не нужен топор ios. Вы должны сделать это так:

const path = 'assets/default/js/bundle/vue_data.bundle.js';
import('@/' + path).then(module => {
  const {Add, Edit, Filter, View} = module;
});

Вам необходимо жестко закодировать часть @/, иначе возникнут проблемы, например, если вы попытались сделать import(path) с const path = '@/assets/default/js/bundle/vue_data.bundle.js'

...