[英]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.