在我的NodeJSv4.1.1代码中使用Babel。
已经运行了require钩子:
require("babel-core/register");
$appRoot = __dirname;
module.exports = require("./lib/controllers/app");
在随后加载的.js
文件中,我正在执行以下操作:
import { Strategy as LocalStrategy } from "passport-local";
但是这会在CLI中生成以下错误:
import { Strategy as LocalStrategy } from "passport-local";
^^^^^^
SyntaxError: Unexpected reserved word
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:413:25)
at loader (/Users/*/Documents/Web/*/node_modules/babel-core/node_modules/babel-register/lib/node.js:128:5)
at Object.require.extensions.(anonymous function) [as .js] (/Users/*/Documents/Web/*/node_modules/babel-core/node_modules/babel-register/lib/node.js:138:7)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at module.exports (index.js:9:5)
at Object.<anonymous> (app.js:102:39)
$passport = require('passport');
更改为var $passport = require('passport');
,你是否仍然会看到那个错误? - maxbabel-register
模块,因为您正在使用Babel 6。然后确保所涉及的文件没有被忽略。请参阅@pherris下面的评论。 - ianat loader (/Users/*/Documents/Web/*/node_modules/babel-core/node_modules/babel-register/lib/node.js:128:5)
,这确实听起来像是在使用babel-register
... - Jules