2017-11-25 8 views
3

내 프로젝트에 aysncawait을 사용하려고합니다. 먼저 FiddleJS에서 이러한 작업을 시도했지만 제대로 작동하지만 IDE (PHPSTORM 2017)에서이 작업을 시도했습니다. 오류가 발생했습니다 :비동기 및 일부 IDE의 오류 대기 중

async function test(url){ 
     ^^^^^^^^ 

SyntaxError: Unexpected token function 
    at createScript (vm.js:56:10) 
    at Object.runInThisContext (vm.js:97:10) 
    at Module._compile (module.js:542:28) 
    at Object.Module._extensions..js (module.js:579:10) 
    at Module.load (module.js:487:32) 
    at tryModuleLoad (module.js:446:12) 
    at Function.Module._load (module.js:438:3) 
    at Module.runMain (module.js:604:10) 
    at run (bootstrap_node.js:389:7) 
    at startup (bootstrap_node.js:149:9) 

나는 또한 vscode에서 시도하고 같은 오류가 발생했습니다. 여기

내가 어떻게 뭘하려 :

async function test(url){ 
    console.log(await check(url)); 
} 

app.get('/test', (req, res) => { 

    var url = req.query.url; 
    console.log(url); 
    test(url); 

    console.log(url) 
}); 

function check(url){ 

    console.log(url); 

    return new Promise((resolve, reject) => { 

     request(url, function (error, response, body) { 

      if(response.headers.server === 'test'){ 
       url = url + '123'; 
       resolve(url); 
      } else { 
       reject('error'); 
      } 

     }); 

    }); 
} 

내가 말했듯이, FiddleJS에서이 IDE의에 오류가 왜 벌금 (https://jsfiddle.net/voogcrbf/2/), 모르는 일.

희망 하시겠습니까?

답변

2

비동기 await를이 노드 V7.3에 도입되었다. 당신이 사용하고있는 node.js 버전은 무엇인가, 그것은 ide가 아닌 것에 달려있다.

+0

좋은 지적입니다. 오류 자체는 IDE와 관련이없는 코드 실행 중에 있지만이 코드의 구문 형광펜 오류는 IDE가 최신 JS로 최신 상태가 아니기 때문에 발생합니다. –

1

PhpStorm은 아직 최신 JavaScript.next를 기본적으로 지원하지 않습니다.

IntelliJ 제품에 대해 this JavaScript.next support plugin이 발견되었습니다.이 제품은 기능을 핵심 기능으로 사용하기 전까지는 다소 유용 할 수 있습니다. 해당 사이트에서

일부 조각 :

Javascript ES6/7 syntax improvements and additions.

Syntax highlights for annotations and async, await, from

+0

작동하지 않습니다. 여전히 동일한 오류 – zb22

+0

플러그인 페이지의 누군가가''언어 및 프레임 워크 '->'javascript '->'javascript language version''에서 언어 버전을 설정해야한다고 말합니다. –

+0

시도해 보았습니다. 거기서 ECMAScript 6를 선택했습니다. – zb22