如何在节点中运行带有导入的ES6模块的文件

问题描述 投票:-2回答:1

我有一个使用webpack设置的react应用,并且还希望有一个在节点中运行的脚本,以将内容写入输出文件,例如:

script.mjs

import fs from 'fs';
import {SomeClass} from './index.js';

const outputFile= fs.createWriteStream(__dirname + '/output.png');

// Writes into output file

并且在package.json中具有以下脚本命令:

"scripts": {
  ...
  "runFile": "node --experimental-modules test/script.mjs",
  ...
}

[每当我运行npm run runFile时都会抱怨:

import {SomeClass} from './index.js';
        ^^^^^^^^^
SyntaxError: The requested module './index.js' does not provide an export named 'SomeClass'

即使它存在于该文件中:

./ index.js

export SomeClass from './SomeClass';

我什至使用node -r esm test/script.js在节点中运行,但它一直在抱怨ES6 exports。有人可以指出我如何使用node命令运行包含ES6内容的js文件吗?

NODE v10

javascript node.js ecmascript-6 babel
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.