JavaScript
ECMAScript 支持
Turbopack 使用 SWC 构建 JavaScript 和 TypeScript 代码。因此我们将 SWC 与 ECMAScript 版本相匹配,凡是 SWC 支持的版本,Turbopack 同样支持,也就是说 Turbopack 默认支持所有 ESNext 语法。
Browserslist
针对配置代码构建的目标浏览器,使用 Browserslist 已成为行业标准。若要使用此功能,你可在 package.json
添加 browserslist
字段:
package.json
{
"browserslist": [
"last 1 version",
"> 1%",
"not dead"
]
}
Turbopack 原生支持 Browserslist,它会将 package.json
的信息传递给 SWC 以提供 browserslist
功能。也就是说你可以使用 Turbopack 轻松决定要为传统浏览器或现代浏览器构建代码。
Turbopack 及其开发服务器正处于 alpha 预览阶段,目前在开发时将预设最小的 browserslist 配置以最大程度减少代码转换。在未来的发行版本,Turbopack 将根据你配置的 browserslist 为相应的环境构建代码。
Babel
Babel 可为代码中自定义语法提供相应的转换,包括处于早期提案的语法。
Turbopack 目前还不支持 Babel 插件。在默认配置中,我们没有使用 Babel 编译 JavaScript 或 TypeScript 代码。
未来将通过插件的形式,为 Babel 提供支持。