项目中有这么一个需求,就是按需启动 mock 功能。考虑到 mock 只是在特定情况下,所以考虑通过 cross-env
来处理。 :::
cross-env 修改生产环境变量
- 我想要的最终效果是 npm run dev:mock 来启动 mock,所以先安装 cross-env
bash
npm i --save cross-env
- 找到
/config/dev.evn.js
,添加 MOCK 变量
javascript
module.exports = {
MOCK: JSON.stringify(process.env.MOCK) || 'false',
}
- 在 package.json 中配置变量
json
{
"scripts": {
"dev:mock": "cross-env MOCK=true webpack --config build/webpack.config.js"
}
}
- 使用变量
javascript
if (process.env.MOCK === 'true') {
fetchMock.post('https://xxx/user/login', loginAPI.login)
}
- 启动 MOCK
bash
npm run dev:mock