簡體   English   中英

如何測試和聲/ ES6 / ECMAScript 6 JavaScript?

[英]How to test harmony / ES6 / ECMAScript 6 JavaScript?

按照標題,我試圖測試一些用ES6 JS編寫的AMD模塊,它們是從nodejs運行的。

我第一次嘗試用實習生 :即使啟用后--harmony中的NodeJS,我結束了實習面臨的依存關系鏈,在這里我無法啟用如伊斯坦布爾 ,esprima和人和諧相處(我開了一個問題,對於這一點)。

然后我搬到摩卡上 ,在這里我被卡住了...很奇怪 我為nodejs和mocha本身都啟用了Harmony,這是package.json測試腳本:

"test": "node --harmony node_modules\\mocha\\bin\\mocha tests --harmony --recursive"

我從命令提示符運行為npm test my_test_folder 盡管如此,某些ES6構造(例如const )還是可以的,但隨后在銷毀分配時就被阻塞了。 這是第一批輸出行:

const { log, dir } = require('../consoleLogger.js');
      ^
SyntaxError: Unexpected token {
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    [...continues...]

我還檢查了該SO線程,並聽說了有關編譯器的信息, 但是我真的不知道它們是否可以工作 ,我現在正在嘗試使編譯器在這種情況下可以工作。

關於如何解決此問題的任何想法,而無需更改代碼中散布的所有ES6位? TA。

我一直在用

npm install mocha-traceur

mocha ./tests/* --compilers js:mocha-traceur 

它一直像魅力一樣運作!

V8尚未實現解構,因此暫時不會在節點中使用它。 塊作用域(包括const)大部分是實現的,但是請注意,ES6之前的const版本始終可用,因此您可能需要仔細檢查一下您實際觀察到的內容–您可以嘗試使用“ let”聲明來減少歧義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM