【发布时间】:2016-07-06 14:03:17
【问题描述】:
我想基于 source code here 运行以下代码,其中包含一些 ES6 语法,例如 import ... from ...:
import rgb from "./rgb";
import array from "./array";
import date from "./date";
import number from "./number";
import object from "./object";
import string from "./string";
import constant from "./constant";
var interpolateValue = function(a, b) {
// set var t and c
var t = typeof b, c;
// if b is null or t is type boolean,
return b == null || t === "boolean" ? constant(b)
: (t === "number" ? number
: t === "string" ? ((c = color(b)) ? (b = c, rgb) : string)
: b instanceof color ? rgb
: b instanceof Date ? date
: Array.isArray(b) ? array
: isNaN(b) ? object
// (a,b) is 2 function args
: number)(a, b);
}
console.log(interpolateValue("foo", "bar")(0.5));
我尝试在以d3.js 作为依赖项的节点项目中运行此代码。但是,我在控制台中收到以下指向 import 的错误:
SyntaxError: Unexpected reserved word
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:139:18)
at node.js:968:3
我的问题:
- 如何逐步设置节点环境以运行具有 ES6 语法的代码?
- 在第一个答案的帮助下,我设法设置环境运行成功(详情可以在第二个解决方案中找到),但是编译速度似乎很慢。有谁知道为什么?
谢谢!
【问题讨论】:
-
你弄明白了吗?
-
好的,谢谢。但我又加了第二个问题,但我不确定把它们放在一起是否合适。
标签: javascript node.js d3.js babeljs