是否可以执行类似
的操作import Vue from '../vendor/vue';
import slides from '../data/'+$root.name'+.json';
Vue.component('mycomponent', {
答案 0 :(得分:1)
不,不幸的是,import语句必须使用静态名称。
有人建议添加动态module()
函数,该函数将动态加载:https://github.com/tc39/proposal-dynamic-import
建议的语法是:
import('./' + dynamicFileName + '.js')
.then(module => {
// use module
})
.catch(err => {
// handle error
});
它看起来是活跃的:https://github.com/tc39/proposals
这里看起来有一个polyfill:https://github.com/ModuleLoader/es-module-loader
另一个问题是你无法直接将json导入JavaScript。以下方法可能就是您所追求的目标:
幻灯片文件:
export const slides = [
{ ... }
];
然后使用静态模块路径或动态导入polyfill导入文件。