我正在用Laravel编译我的javascript文件,而且由于我对Babel和package.json还不太了解,我想问Laravel是否支持ES8,尤其是异步/等待?
如果我尝试它,我无法判断Mix是否正在将异步/等待转换到ES5,或者异步/等待是否只是由我的浏览器支持,这是最新的版本。我仍然希望将它转到ES2015上,这样应用程序仍然可以在只支持ES5的浏览器上工作。
发布于 2017-09-09 19:08:12
异步/等待与Laravel:
如果您使用并使用异步并等待,您将得到以下错误消息:
未定义的ReferenceError: regeneratorRuntime未定义
但是Laravel使用Babel来支持ES2015。如果需要,我们可以定制编译。
若要使异步/等待工作正常,请将文件.babelrc添加到您的根目录中,其中包含以下内容:
{
"presets": ["es2015", "stage-3"],
"plugins": [
"transform-runtime"
]
}并安装所需的npm软件包:
npm install babel-preset-es2015 babel-preset-stage-3 babel-plugin-transform-runtime --save-dev重要的事情(导致错误)是转换-运行时插件。它不随Laravel一起提供,但您需要它才能使异步/等待功能正常工作。
ES8:
正如您在上面看到的,您可以在Babel中使用不同的预置阶段。有了它们,您可以使用ES8或更高版本中包含的特性。例如,第3阶段带来了异步/等待功能。
他们的网站上有一个各阶段概述。
https://stackoverflow.com/questions/45894763
复制相似问题