【问题标题】:Variables in import statement导入语句中的变量
【发布时间】:2018-02-07 13:01:38
【问题描述】:

有没有可能做类似的事情

import Vue from '../vendor/vue';
    import slides from '../data/'+$root.name'+.json'; 

    Vue.component('mycomponent', {

【问题讨论】:

标签: javascript import vuejs2


【解决方案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 导入文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-10
    • 1970-01-01
    相关资源
    最近更新 更多