详解vue-cli 构建Vue项目遇到的坑


Posted in Javascript onAugust 30, 2017

前言

使用Vue做管理系统和WebApp做过三四个项目了,期间遇到很多坑,再次一一列举,并给出解决方案,方便日后更方便使用,也为他人提供一些解决方案。

问题表象和解决方案

1、编译后js、css等相对路径和绝对路径。

config/inde.js文件
 build: {
  env: require('./prod.env'),
  index: path.resolve(__dirname, '../dist/index.html'),
  assetsRoot: path.resolve(__dirname, '../dist'),
  assetsSubDirectory: 'static',
  assetsPublicPath: './', // "./"表示相对路径 编译结果 <link href=./static/css/app.518fd3471fd03bfce5524de6e934771c.css rel=stylesheet>
  productionSourceMap: true,
  // Gzip off by default as many popular static hosts such as
  // Surge or Netlify already gzip all static assets for you.
  // Before setting to `true`, make sure to:
  // npm install --save-dev compression-webpack-plugin
  productionGzip: false,
  productionGzipExtensions: ['js', 'css'],
  // Run the build command with an extra argument to
  // View the bundle analyzer report after build finishes:
  // `npm run build --report`
  // Set to `true` or `false` to always turn it on or off
  bundleAnalyzerReport: process.env.npm_config_report
 },

2、CSS中图片相对路径编译后,路径不对。

//同常路径表现为 ./static/img/static/img/*.jpg (定义为imgurl)
解决方案 修改build/untils.js
//替换相应代码
if (options.extract) {
   return ExtractTextPlugin.extract({
    use: loaders,
    publicPath: '../../', //注意: 此处根据路径, 自动更改 ,(imgurl='static/img/*.jpg')
    fallback: 'vue-style-loader'
   })
  } else {
   return ['vue-style-loader'].concat(loaders)
  }

3、使用代理,解决跨域请求。

vue-cli已经集成 http-proxy-middleware插件

github:https://github.com/chimurai/http-proxy-middleware

proxyTable: {
   '/dianmi_service': {
    target: 'https://****.com.cn',
    changeOrigin: true
   },
   '/brand_service': {
    target: 'https://*****.com.cn',
    changeOrigin: true
   }
  },

其中 target的值一定不可以包含工程名,否则可能会出现服务器Session问题

4、用Vue做页面,利用phonegap编译android APP时,兼容问题。

cordova android 4.0 以下的默认webView,不支持ES6,会导致一些列问题。

好在,cordova android允许我们自定义自己的webView引擎。那么我们就想到了 腾讯浏览服务X5内核。

然而有大神基于此内核编写了cordova 插件

githup:https://github.com/offbye/cordova-plugin-x5engine-webview

使用此插件很好的解决 低版本安卓不支持Vue。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 单选框,多选框美化代码
Aug 01 Javascript
jQuery 行背景颜色的交替显示(隔行变色)实现代码
Dec 13 Javascript
Google排名中的10个最著名的 JavaScript库
Apr 27 Javascript
js获取当前页面路径示例讲解
Jan 08 Javascript
在JavaScript应用中使用RequireJS来实现延迟加载
Jul 01 Javascript
深入对Vue.js $watch方法的理解
Mar 20 Javascript
vue事件修饰符和按键修饰符用法总结
Jul 25 Javascript
详解Vue.js中.native修饰符
Apr 24 Javascript
详解Vue CLI3配置解析之css.extract
Sep 14 Javascript
React传值 组件传值 之间的关系详解
Aug 26 Javascript
Angular6使用forRoot() 注册单一实例服务问题
Aug 27 Javascript
Vue 防止短时间内连续点击后多次触发请求的操作
Nov 11 Javascript
前端开发不得不知的10个最佳ES6特性
Aug 30 #Javascript
vue.js的手脚架vue-cli项目搭建的步骤
Aug 30 #Javascript
for循环 + setTimeout 结合一些示例(前端面试题)
Aug 30 #Javascript
详解使用nvm管理多版本node的方法
Aug 30 #Javascript
jquery插件开发之选项卡制作详解
Aug 30 #jQuery
浅谈angular.js跨域post解决方案
Aug 30 #Javascript
详解a++和++a的区别
Aug 30 #Javascript
You might like
PHP中的str_repeat函数在JavaScript中的实现
2013/09/16 PHP
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
2010/01/22 Javascript
修改js Calendar日历控件 兼容IE9/谷歌/火狐
2013/01/04 Javascript
jquery选择器使用详解
2014/04/08 Javascript
javascript判断是否按回车键并解决浏览器之间的差异
2014/05/13 Javascript
浅谈Javascript的静态属性和原型属性
2015/05/07 Javascript
谈一谈javascript中继承的多种方式
2016/02/19 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(1)
2017/02/20 Javascript
原生JS中slice()方法和splice()区别
2017/03/06 Javascript
jQuery插件FusionCharts绘制2D柱状图和折线图的组合图效果示例【附demo源码】
2017/04/10 jQuery
JavaScript模块化之使用requireJS按需加载
2017/04/12 Javascript
JS实现简单的选择题测评系统代码思路详解(demo)
2017/09/03 Javascript
详解微信小程序审核不通过的解决方法
2018/01/17 Javascript
vue的传参方式汇总和router使用技巧
2018/05/22 Javascript
基于javascript原生判断DOM是否加载完毕
2020/10/14 Javascript
Python3和pyqt5实现控件数据动态显示方式
2019/12/13 Python
python3 动态模块导入与全局变量使用实例
2019/12/22 Python
Python SMTP配置参数并发送邮件
2020/06/16 Python
用Python自动清理系统垃圾的实现
2021/01/18 Python
HTML5的hidden属性兼容老浏览器的方法
2014/04/23 HTML / CSS
捷克玩具商店:Bambule
2019/02/23 全球购物
GUESS Factory加拿大:牛仔裤、服装及配饰
2019/09/20 全球购物
介绍一下HTTP、HTTPS和SSL
2012/12/16 面试题
优秀员工自荐书
2013/12/19 职场文书
班组长安全职责
2014/01/05 职场文书
建议书的格式
2014/05/12 职场文书
贷款承诺书范文
2014/05/19 职场文书
班级标语大全
2014/06/21 职场文书
家装业务员岗位职责
2015/04/03 职场文书
学雷锋献爱心倡议书
2015/04/27 职场文书
2015初中团委工作总结
2015/07/28 职场文书
2016先进集体事迹材料范文
2016/02/25 职场文书
HR必备:销售经理聘用合同范本
2019/08/21 职场文书
写一个Python脚本自动爬取Bilibili小视频
2021/04/24 Python
redis sentinel监控高可用集群实现的配置步骤
2022/04/01 Redis
Python+Matplotlib图像上指定坐标的位置添加文本标签与注释
2022/04/11 Python