2016-08-08 24 views
0

我正在尝试运行一个protactor测试。但是在使用模块时会抛出下面的内容。我对ES6很新,怎么配置它。量角器抛出意想不到的令牌导出

export { getFreePort }; ^^^^^^ SyntaxError: Unexpected token export at Object.exports.runInThisContext (vm.js:76:16) at Module._compile (module.js:513:28) at Module._extensions..js (module.js:550:10) at Object.require.extensions.(anonymous function) [as .js] (C:\Dev\Code\JG.Crowdfunding.Website\node_modules\babel-register\lib\node.js:156:7) at Module.load (module.js:458:32) at tryModuleLoad (module.js:417:12) at Function.Module._load (module.js:409:3) at Module.require (module.js:468:17) at require (internal/module.js:20:19) at Object. (C:\Dev\Code\JG.Crowdfunding.Website\protractor.conf.js:4:18)

我babelrc文件有

{ "presets": ["es2015"] } 

导入的文件,其中的错误发生时的样子

var freeport = require('freeport'); 

var getFreePort = function() { 
return new Promise((fulfill, reject) => { 
    freeport((err, port) => { 
     if (err) { 
      console.log('ERROR: Something went wrong while trying to find a free port.'); 
      reject(err); 
     } 
     fulfill(port); 
    }); 
}); 
}; 

export { getFreePort }; 

而且我protractor.conf onPrepare功能我里面。

onPrepare: function() { 
return portHelper.getFreePort().then(port => { 
    fakeApiServer.startFakeApiServer(port); 
}).then(() => { 
    return browser.driver.manage().window().maximize(); 
})} 

和我做了以下的protractor.conf进一步上涨

require('babel-core/register'); 
var portHelper = require('./test/e2e/helpers/portHelper'); 

感谢

回答

0

因为它事实证明我的错误是babel-register忽略了node_modules文件夹。为了解决我的问题,我需要做

require('babel-core/register')({ ignore: false }); 

而不是仅仅

require('babel-core/register'); 
0

在这一行,你需要port括号:return portHelper.getFreePort().then(port => {

相关问题