项目背景:
在现实开发中,我们总会遇到:代码在自己电脑开发调试的时候,没有任何问题,但是一上手机端就会出现各种不兼容或想想不到BUG。
由于手机端没办法直接调试,我们不得不一步一步的去alert输出,来判定问题最终出现在那个点上。说实话,这样的做法,我也有过,感觉就是苦不堪言。于是我狠下决心,必须搞个调试的出来,然后就发现了vconsole。接下来,就有了vue热更新动态引入vconsole调试的实践。
实践思路:
1、在项目的build/dev-server.js文件,修改静态资源的指向,这样就可以访问对应文件夹下面的所有静态资源了。热更新(npm run dev)启动后,通过 localhost:8080/ + "对应的静态资源文件名",就可以直接访问对应的静态资源。
2、在项目文件夹下的index.html文件中,引入对应的静态资源,就可以直接进入调试了。
代码改动:
1、build/dev-server.js文件
// serve pure static assets var staticPath = path.posix.join(config.dev.assetsPublicPath, config.dev.assetsSubDirectory) //app.use(staticPath, express.static('./static')) app.use(staticPath, express.static(path.join(__dirname, '../../lib'))) var uri = 'http://localhost:' + port + '/index'
2、项目文件夹下的index.html文件
<script type="text/javascript" src="/tools/vconsole.min.js"></script><!-- 仅用于热更新使用 --> <script> if(navigator.platform.indexOf("Win") == 0 || navigator.platform.indexOf("Mac") == 0){ var vConsole = new VConsole();// init vConsole } </script>
3、vconsole下载地址
https://cdn.bootcss.com/vConsole/3.3.0/vconsole.min.js