我有一个非常简单的代码在es6
中编写import { scale } from 'd3-scale';
const a = scale.scalePow().domain([0, 20]).range([0, 1, 2, 30, 560, 1]);
console.log(a(1));
可以通过
安装依赖项'd3尺度'npm install d3-scale --save
我运行以下命令执行脚本:
npx babel-node scale_words.js
我得到了这个错误:
/Users/antkong/scale_series.js:1
(function (exports, require, module, __filename, __dirname) { import { scale } from 'd3-scale';
^^^^^^
SyntaxError: Unexpected token import
at createScript (vm.js:80:10)
at Object.runInThisContext (vm.js:139:10)
at Module._compile (module.js:588:28)
at loader (/Users/antkong/node_modules/babel-register/lib/node.js:144:5)
at Object.require.extensions.(anonymous function) [as .js] (/Users/antkong/node_modules/babel-register/lib/node.js:154:7)
at Module.load (module.js:545:32)
at tryModuleLoad (module.js:508:12)
at Function.Module._load (module.js:500:3)
at Function.Module.runMain (module.js:665:10)
at Object.<anonymous> (/Users/antkong/node_modules/babel-cli/lib/_babel-node.js:154:22)
我根本不希望这个错误。进口语句对我来说看起来很正常。
这是软件包。JSON
{
"name": "test",
"description": "Test",
"version": "0.1.0",
"dependencies": {
"d3-scale": "^1.0.7"
},
"devDependencies": {
"babel-cli": "^6.26.0",
"babel-preset-env": "^1.6.1",
"babel-preset-stage-0": "^6.24.1",
"jsdom": "^11.3.0",
"jsdom-global": "^3.0.2"
}
}
我正在使用
node
V8.7.0
和
npm
5.5.1
我尝试了重新融合npm install
,但没有解决问题。在同一文件夹中,我有另一个带有这些导入语句的脚本
import 'jsdom-global/register';
import 'canvas';
import { EventEmitter } from 'events';
可以使用npx babel-node
运行
如果我使用替代语法,则可以在没有任何问题的情况下运行
var d3Scale = require("d3-scale")
var a = d3Scale.scalePow().domain([0, 20]).range([0, 1, 2, 30, 560, 1]);
;
console.log(a(1))
同一文件夹中的.babelrc
中有一个only
条目。它将scale_words.js
排除在被执行为ES6文件的情况下。