有沒有辦法在sails.js中獲得ES6?SailsJS支持ES6嗎?
回答
這是一個node.js問題,沒有明確的風帆。是當前版本的node.js支持某些ES2015標準,具體取決於您啓動服務器時使用的Node.js版本和標誌。
大部分功能已經激活,但使用所有的功能,你會在你的項目文件夾使用node app.js --es_staging
或node app.js --harmony
代替sails lift
以下鏈接提供什麼功能目前版本的節點支持,以及如何更新的信息訪問它們。
您需要檢查ES6的兼容性與node.js的,而不是任何框架一樣sails.js,快遞等
因爲在最後的node.js將JavaScript的改變服務器端代碼。 因此,您使用的是哪種框架並不重要。
You can use the sails with ES6:
對於ES6兼容性檢查kangax.github.io。
推薦:
Sails v 0.11.0 or greater
Node v 4.. or greater
npm v 2.14.4 or greater
現在,您可以探索新的Ecmascript6功能。
您將從http://es6-features.org/獲得新功能。
TEST:
代碼:
ecma6Test:function(req,res,next){
var evens =req.body.evens
odds = evens.map(v => v + 1);
res.json({sucess:true,'odds':odds});
}
請求:
{"evens":[2,4,6,8,10]}
響應:
{
"sucess": true,
"odds":[3, 5, 7, 9, 11]
}
毗溼奴的答案有你覆蓋。
ES6的顯式列表功能在最新的節點版本可在這裏https://nodejs.org/en/docs/es6/
Which ES6 features ship with Node.js by default (no runtime flag required)?
- 設(嚴格模式)
- 常量
- 功能的塊(嚴格模式只)
- 自v8 3.31.74.1開始,塊範圍聲明有意使用非兼容限制嚴格的模式代碼。開發人員應該意識到,隨着v8繼續向ES6規範合規性發展,這將會發生變化。
- 類(嚴格模式)
- 集合
- 地圖
- WeakMap
- 設置
- WeakSet
- 類型數組
- 發電機
- 二進制和八進制文字 個
- 對象字面擴展(簡寫屬性和方法)
- 承諾
- 新的String方法
- 符號
- 模板串
- 箭頭功能
對不起,格式化。應用程序不是最好的 –
SailsJS只是通過ES5語法編寫框架並且它不需要支持ES6。
您可以像往常一樣使用ES6語法編寫項目,並使用Babel \ Traceur \來運行任何操作。
我的流程如下:
- 創建帆項目;
- 安裝
babel
作爲devDependencies
; - 更新
npm start
腳本package.json
與"start": "babel-node app.js"
;
就是這樣。我可以在我的controllers \ models \ etc中編寫ES6 \ 7代碼,並通過npm start
命令運行服務器。當你用ES5語法編寫它時,它就像往常一樣工作。
不那麼容易。引發錯誤: /node_modules/source-map-support/source-map-support.js:415 var hasStack =(arguments [1] && arguments [1] .stack); ^ TypeError:無法讀取未定義的屬性'文件名' – alexmngn
還有就是sails-hook-babel鉤子,可以先制定出適合您。它不適用於我,正如我在下面解釋的那樣,但我希望它獲得更高的可見度,得到改進,然後這個答案將更具相關性。
目前,從v6.0.1開始,該庫將在sails掛接運行後加載文件。這意味着如果您想在例如ES2015中使用ES2015你的config/routes.js
文件,你會得到一個語法錯誤。但正如this issue所建議,它應該適用於例如api
文件夾中的文件。
- 1. Cordova支持ES6和/或Angular2嗎?
- 2. ES6 React和ESLint支持
- 3. sailsjs框架不支持交易
- 4. 我可以支持所有ES5,ES6,ES7功能嗎?
- 5. JSX支持哪些ES6功能?
- 6. Babel.js是否支持ES6 Object.observer()方法?
- 7. ES6支持心不是工作
- 8. 對PhantomJS中的ES6的原生支持
- 9. ES6擴展語法IE不支持
- 10. ReSharper的ES6默認參數支持
- 11. NetBeans 8.1上的Javascript es6語法支持
- 12. VS代碼如何支持ES6代碼
- 13. 你支付Subversion支持嗎?
- 14. 不支持linux 3.7.1支持ext2嗎?
- 15. Ecdescript-6/es6對Enide/eclipse的支持不足Ecorte-6/es6對導入/導出的「意外令牌」的支持
- 16. MonoTouch支持NSInvocationOperation嗎?
- 17. GraphQL支持Websockets嗎?
- 18. MVVMCross支持ActionBar嗎?
- 19. Chrome支持「addEventListener」嗎?
- 20. emfield支持iTunes嗎?
- 21. SlimBox2支持PNG嗎?
- 22. GWT支持Deque嗎?
- 23. Watin支持xPath嗎?
- 24. yslow支持iframe嗎?
- 25. PlayBook支持GWT嗎?
- 26. Robotium支持OpenGL嗎?
- 27. Android支持SNMP嗎?
- 28. Inapsaps支持websockets嗎?
- 29. PyOpenCV支持GPU嗎?
- 30. OpenVswitch支持BFD嗎?
V8團隊認爲舞臺功能並不穩定。但你可以通過--harmony標誌來使用它們。但我認爲你必須等到他們穩定。 –