项目拉下来无法运行需要添加@babel/plugin-proposal-optional-chaining支持
iceshu opened this issue · 5 comments
iceshu commented
如题,项目用了ts 的 ?。的方法去做 但是没有支持的插件
所以需要在
genesis.ts 里 webpackchai增加下支持
class ChainingPlugin extends Plugin {
/**
* 修改webpack的配置
*/
public chainWebpack({ config }: WebpackHookParams) {
config.module
.rule("ts")
.test(/\.(t)sx?$/)
.use("babel")
.loader("babel-loader")
.tap(options => {
const { plugins } = options;
plugins.push(["@babel/plugin-proposal-optional-chaining"]);
options.plugins = plugins;
return options;
})
.end();
}
}
//这里增加下刚写的
ssr.plugin.use(new ChainingPlugin (ssr));
lzxb commented
这个是@babel/preset-env
的bug导致的。它没有根据当前node的版本号,来引入对应的插件。
你的node的版本号多少?
lzxb commented
你可以看下这个配置:
https://fmfe.github.io/genesis-docs/core/#build-browsers
修改一下node的版本号,降低一些,比如我使用12.6就不会有这个问题。
lzxb commented
奈斯。
iceshu commented
@JWong1105
这里引用的 我的node版本v14.15.1
import { SSR, Renderer, Plugin, WebpackHookParams } from "@fmfe/genesis-core";