用babel和nodejs导出函数的问题
我正在使用webstorm的babeljs。 巴贝尔的论据是:
–source-maps –out-file $ FileNameWithoutExtension $ -compiled.js $ FilePath $
我有以下es6代码:
export function primeFactors(num) { let res = []; let n = 2; while (num > 1) { while(num%n ===0) { res.push(n); } n++; } return res; }
它被转移到
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.primeFactors = primeFactors; function primeFactors(num) { var res = []; var n = 2; while (num > 1) { while (num % n === 0) { res.push(n); } n++; } return res; } //# sourceMappingURL=numUtils-compiled.js.map
我有一个需要文件的脚本
import {primeFactors} from "lib/numUtils";
它被转移到
"use strict"; var _libNumUtils = require("lib/numUtils"); //# sourceMappingURL=ex3-compiled.js.map
当我运行我得到的nodejs的脚本
导出函数primeFactors(num){ ^^^^^^ SyntaxError:意外的保留字 在exports.runInThisContext(vm.js:73:16) 在Module._compile(module.js:443:25) 在Object.Module._extensions..js(module.js:478:10) 在Module.load(module.js:355:32) 在Function.Module._load(module.js:310:12) 在Module.require(module.js:365:17) 在require(module.js:384:17) 在对象。 (j:\ webstorm_workspace \欧拉\ EX3-compiled.js:3:20) 在Module._compile(module.js:460:26) 在Object.Module._extensions..js(module.js:478:10)
可能是什么原因?