2017-11-02 11 views
0

node.jsのキャンバスでいくつかのテストを行いたいbabelとnpxと一緒にjsdomで予期しないトークンが発生する

これは、これは私がしかし、スクリプトを実行するとこれは、私のテストのJavaScript(a.js

const { jsdom } = require('jsdom'); 

// main 
jsdom(); 


console.log('done') 

である私の.babelrc

{ 
"presets": ["env", "stage-0"] 
} 

である私のpackage.json

{ 
    "name": "test", 
    "description": "Test", 
    "version": "0.1.0", 
    "author": "[email protected]", 
    "dependencies": { 
    "canvas": "^1.6.7", 
    }, 
    "devDependencies": { 
    "babel-cli": "^6.26.0", 
    "babel-preset-env": "^1.6.1", 
    "babel-preset-stage-0": "^6.24.1", 
    "jsdom": "^11.3.0" 
    } 
} 

です

このエラーの原因は何

/work/node_modules/jsdom/lib/api.js:10 
const { URL } = require("whatwg-url"); 
    ^

SyntaxError: Unexpected token { 
    at exports.runInThisContext (vm.js:53:16) 
    at Module._compile (module.js:374:25) 
    at Object.Module._extensions..js (module.js:417:10) 
    at Module.load (module.js:344:32) 
    at Function.Module._load (module.js:301:12) 
    at Module.require (module.js:354:17) 
    at require (internal/module.js:12:17) 
    at [stdin]:3:16 
    at Object.exports.runInThisContext (vm.js:54:17) 
    at Object.<anonymous> ([stdin]-wrapper:6:22) 

npx babel a.js | nodejs -- - 

私はこのエラーを取得しますか?このエラーを修正するにはどうすればよいですか?

バージョン情報:

のNode.js:v4.2.6 OS:Ubuntuの16.04

+0

どのノードのバージョンですか? – Li357

+0

v4.2.6。 Running ubuntu 16.04 –

答えて

1

あなたはjsdomと互換性がないノードのバージョンを実行しています。 jsdom @ 10にはnodejs v6が必要です。したがって、Nodeをアップグレードするか、jsdomをダウングレードしてください。

ここにその情報が見つかりました:https://github.com/tmpvar/jsdom#jsdom

+0

jsdomをダウングレードしたい場合は、どのバージョンを使うべきですか? –

+0

Jsdomによると: "(v10以下のjsdomのバージョンはまだNode.js v4で動作しますが、サポートされていません)" – ThatsRight

+0

エラーメッセージを回避できるjsdomの最高バージョンは9.12.0です。 –

関連する問題