2017-04-27 87 views
0

我開始使用量角器使用茉莉花,但是當它解析使用箭頭箭頭函數的配置時,我立即收到'意外標記'錯誤。有誰知道我可能會錯過什麼?依賴?它在一個新的macbook上。我在舊電腦上沒有這個問題。帶箭頭功能的語法錯誤

exports.config = { 
    framework: 'jasmine2', 
    capabilities: env.capabilities, 
    baseUrl: env.baseUrl, 
    specs: env.specs, 
    allScriptsTimeout: 30 * 10000, 

onPrepare: async() => { 
    if (!global.jasmineRequire) { 
     var jasmineRequire = require('jasmine-core'); 
     if (typeof jasmineRequire.interface !== 'function') { 
      throw "not able to load real jasmineRequire" 
     } 
     global.jasmineRequire = jasmineRequire; 
    } 
    require('jasmine-promises'); await browser.get(env.baseUrl + 
    '#!/login'); 



    macs-iMac:e2etest AchieveIt$ protractor conf.js 
    [08:03:45] E/configParser - Error code: 105 
    [08:03:45] E/configParser - Error message: failed loading 
    configuration file conf.js 
    [08:03:45] E/configParser - 
    /Users/mac/achieveit/E2ETests/e2etest/conf.js:13 
    onPrepare: async()=> { 
      ^
    SyntaxError: Unexpected token (
    at createScript (vm.js:56:10) 

回答

1

更新來更新

沒關係,我看你正在使用的對象了。你的編譯器是什麼?我認爲你的編譯器沒有正確編譯es6。確保無論全局還是本地安裝了所有節點模塊。您的代碼應該是有效的,看到這個小提琴:https://es6console.com/j20jir0j/

UPDATE

即使在ES6,你的語法是錯誤的。它應該是:

onPrepare = async() => { 

老了TS

這不是有效的打字稿,不應該在任何地方工作。

更改您的線路:

onPrepare =(): async => { 

或者,如果你不需要詞彙範圍:

onPrepare(): async { 
我沒有使用打字稿
+0

。至少我不打算 – Jameson

+0

即使使用es6,你的語法也是無效的。嘗試: onPrepare = async()=> { – Eeks33

+0

其實我只是意識到你正在使用一個對象。該問題必須與您的編譯器。看到這個小提琴,應該是正確的:https://es6console.com/j20jir0j/請確保您使用的proes es6編譯器 – Eeks33