最近碰到一个需求,公司两个独立的项目,其中A项目需上报埋点数据给B项目,因为两个项目完全独立,部署的服务器不一样,参与的开发人员,测试也都不一样,其中接收上报数据的路径也可能经常发生变化,为避免这些无伤大雅的修改都要走回开发人员手中,故将一些参数作为配置项,以便测试或实施的同事按情况修改。
前端项目采用Vue框架,由Webpack打包,此为背景。
因为项目被打包后,代码结构难以区分,也不支持实时修改,为添加一个可以build后可实时修改生效的配置文件,在此,我用到了generate-asset-webpack-plugin插件。
下面是具体工程:
(1)安装generate-asset-webpack-plugin插件
npm install --save-dev generate-asset-webpack-plugin
(2)在webpack的配置文件webpack.prod.conf.js中引用该插件
var GenerateAssetPlugin = require('generate-asset-webpack-plugin');
(3)在项目根目录创建serverConfig.json文件,内容为需要添加的配置项,比如我的是:
因为json文件不支持注释,故前两项是注释,以下划线区别(这也是我觉得用json文件作为配置项很不合适的一方面啊!!!)
{
"_isReport": "埋点开关,true为开,false为关",
"_