解决React.lazy模式下申坊无法注入publicPath的问题
Build Plugin Sto Public Path
================================
解决部署申坊应用无法注入 publicPath 的问题
何时使用:
1. 项目内部使用 React.lazy 做了代码分割
注意:
使用该插件后, publicPath 只能通过插件进行配置或自动计算, 项目本身的 publicPath 将不再生效
Installation
------------
Install the plugin:
``shell`
$ npm i build-plugin-sto-public-path -D`shell`
$ yarn add build-plugin-sto-public-path --dev
Usage
-----------
build.json
1. 自动计算 publicPath
`js`
{
"plugins": [
[
"build-plugin-sto-public-path",
{
// 是否开启插件自动计算模式
"enableRuntimePath": true,
// 应用类型:
// # 默认为 assets, 可选 site
"appType": "assets",
"projectPath": "/ued-projects/control-tower-ipark/"
}
]
]
}
如上配置
development 模式下,该插件会预测待启动端口,publicPath 将与工程启动的域名保持一致
production 模式下,publicPath 将根据域名特征自动注入计算
2. 根据 process.env.NODE_ENV 的值, 自定义 publicPath
`json``
{
"plugins": [
[
"build-plugin-sto-public-path",
{
"publicPath": {
"development": "...",
"production": "...",
"test": "...",
...
}
}
]
]
}