我嘗試使用Facebook的再生器將ES6代碼轉換爲ES5代碼。 我需要轉換的代碼由React-ace編輯器生成,它是一個字符串。再生器不能識別字符串,只是簡單地返回它們。我試過使用eval()和new Function(),兩者都會在傳遞給regenerator.compile(「我需要編譯的任何代碼」)時被執行。代碼和返回的值只是返回值執行代碼的值。當代碼是字符串時,重新編譯Javascript ES6到ES5代碼
有沒有辦法將React-ace(或任何瀏覽器文本編輯器)生成的字符串轉換並轉換爲ES5代碼?是否有其他庫允許您將ES6語法轉換爲ES5?
工作實例與本地函數聲明:
let testFunction = (b) => {
let a = (c) => {
return c
}
return b;
}
let regenCode = require('regenerator').compile(testFunction).code;
console.log(regenCode);
這將產生:
function testFunction(b) {
var a = function (c) {
return c;
}
return b;
}
試圖做的事:
let regenCode = require('regenerator').compile("let testFunction = (b) => { let a = (c) => { return c } return b; }");
但這隻會給串還給我
請在這裏分享您的代碼 –
請參閱https://stackoverflow.com/help/mcve – guest271314
再生器僅限con將生成器和異步函數轉換爲ES5,而不是其他任何ES6功能。 –