Node.js NodeJS中的动态导入(在Gatsby中):未指定动态导入回调

Node.js NodeJS中的动态导入(在Gatsby中):未指定动态导入回调,node.js,import,gatsby,dynamic-import,Node.js,Import,Gatsby,Dynamic Import,我试图在NodeJS中使用带有eS6文件的动态导入,但无法使其工作 我在其gatsby node.js文件中的gatsby项目中使用它 exports.createPages=async props=>{ //... 常量名称='。/测试' ;(异步()=>{ 常量数据=等待导入(名称) console.log(数据) })() 其中,test.js只是 export const hey='hi' 但我总是得到这样一个未指定动态导入回调。 为什么它不工作?NodeJS版本是12.18.4,因

我试图在NodeJS中使用带有eS6文件的动态导入,但无法使其工作

我在其
gatsby node.js
文件中的
gatsby
项目中使用它

exports.createPages=async props=>{
//...
常量名称='。/测试'
;(异步()=>{
常量数据=等待导入(名称)
console.log(数据)
})()
其中,
test.js
只是

export const hey='hi'
但我总是得到这样一个
未指定动态导入回调。


为什么它不工作?NodeJS版本是
12.18.4

,因为它目前不是发布版本,您需要安装ES6的每个所需模块(在您的情况下),并将其添加到您的babel配置中

运行:

然后,在您的Babel文件中(
Babel.config.js
或项目根目录中的
.babelrc
)将其添加到
插件
数组中:

  "plugins": ["@babel/plugin-syntax-dynamic-import"]
理想情况下,您的Babel文件应该如下所示:

module.exports = function(api) {
  api.cache(true);

  const presets = [
    [`@babel/preset-env`, { 'useBuiltIns': `usage`, 'corejs': `2` }],
    [`@babel/preset-react`, { 'development': true, minify: true }],
  ];

  const plugins = [
    `@babel/plugin-syntax-dynamic-import`,
  ];

  return { presets, plugins };
};

我使用的是
.babelrc
,在那里我添加了插件(安装后),但是babel conf是Gatsby提供的,但是它应该与您建议的()相同。但是,我仍然收到相同的错误消息:(
module.exports = function(api) {
  api.cache(true);

  const presets = [
    [`@babel/preset-env`, { 'useBuiltIns': `usage`, 'corejs': `2` }],
    [`@babel/preset-react`, { 'development': true, minify: true }],
  ];

  const plugins = [
    `@babel/plugin-syntax-dynamic-import`,
  ];

  return { presets, plugins };
};