使用vue-cli打包过程中的步骤以及问题的解决


Posted in Javascript onMay 08, 2018

1、打包命令是npm run build,这个命令实际上是在package.json中,scripts中build所对应的命令;

使用vue-cli打包过程中的步骤以及问题的解决

2、创建一个prod.server.js,这个文件不是必须的,这个文件的用处是在打包完毕之后,通过启动node.js本地服务来访问打包完成的静态文件,不需要的同学可以忽略这一点,

prod.server.js文件代码示例:

let express = require('express');
let config = require('./config/index');
// let axios = require('axios');
let app = express();
let apiRoutes = express.Router();
app.use('/api', apiRoutes);
app.use(express.static('./dist'));

let port = process.env.PORT || config.build.port;
module.exports = app.listen(port, (err) => {
 if (err){
  console.error(err);
  return;
 }
 console.log('Listening at: http://localhost:'+port+'\n');
});

3、在index.html中使用scrip标签引入的js和使用link引入的css文件,全部改为在main.js中直接import;我目前main.js的代码示例:

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
import iView from 'iview'
import 'iview/dist/styles/iview.css'
import VueAwesomeSwiper from 'vue-awesome-swiper'
import MuseUI from 'muse-ui'
import 'muse-ui/dist/muse-ui.css'
import 'src/base/css/libs/museui/muse-ui-fonts.css'
import 'src/base/css/libs/museui/muse-ui-icons.css'
import VueResource from 'vue-resource'

import 'src/base/js/libs/waves/waves.min.js'
import 'src/base/css/libs/waves/waves.min.css'

import $ from 'jquery'

Vue.use(VueResource);
Vue.use(iView);
Vue.use(VueAwesomeSwiper);
Vue.use(MuseUI);

Vue.config.productionTip = false

/* eslint-disable no-new */
new Vue({
 el: '#app',
 router,
 template: '<App/>',
 components: { App }
})

4、图片的相对路径问题,要引用相对路径下的图片,首先是在在config/index.js中,将build.assetsPublicPath改为'',原来是'/',

使用vue-cli打包过程中的步骤以及问题的解决

在.vue文件中引用图片,如果是静态引用,直接写相对路径,如果是动态引用,需要这样写

静态引用,直接写相对路径:

<img src="../../base/img/home/me.jpg" class="round"/>

动态引用,需要require获取动态路径:

<img :src="logo" class="logo-img" @click="toggleMenu"/>
computed:{
 logo(){
  return require(`../../base/img/logo/logo${this.currentImg}.png`);
 }
}

同样的动态设置背景图片也需要动态获取文件路径;

<div id="app" :style="backgroundStyle">
 <s-homepage></s-homepage>
</div>
data() {
 return {
  backgroundStyle: {
   backgroundImage: `url("${require('./base/img/system/bg.jpg')}")`,
   backgroundRepeat: "no-repeat",
   backgroundSize: "100%",
  }
 }
}

5、使用iview开发的话,打包之后,直接打开index.html之后会报错,有两个字体文件引入失败,但是我这里是没有手动引入这两个文件的,最后百度到解决办法是,在webpack.prod.conf.js中设置module.rules中的extract为false;详情见这个issue:https://github.com/iview/iview/issues/515

使用vue-cli打包过程中的步骤以及问题的解决

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

Javascript 相关文章推荐
Javascript和Ajax中文乱码吐血版解决方案
Dec 21 Javascript
Javascript 网页水印(非图片水印)实现代码
Mar 01 Javascript
JavaScript 构造函数 面相对象学习必备知识
Jun 09 Javascript
js中各浏览器中鼠标按键值的差异
Apr 07 Javascript
JS Replace 全部替换字符的用法小结
Dec 24 Javascript
jquery遍历checkbox的注意事项说明
Feb 21 Javascript
jQuery中:gt选择器用法实例
Dec 29 Javascript
JS动态加载脚本并执行回调操作
Aug 24 Javascript
Vue.js2.0中的变化小结
Oct 24 Javascript
vue中子组件传递数据给父组件的讲解
Jan 27 Javascript
javascript的惯性运动实现代码实例
Sep 07 Javascript
全面解析js中的原型,原型对象,原型链
Jan 25 Javascript
详解React-Router中Url参数改变页面不刷新的解决办法
May 08 #Javascript
angularjs实现的购物金额计算工具示例
May 08 #Javascript
Vue微信项目按需授权登录策略实践思路详解
May 07 #Javascript
Vue + better-scroll 实现移动端字母索引导航功能
May 07 #Javascript
node使用promise替代回调函数
May 07 #Javascript
node 使用 async 控制并发的方法
May 07 #Javascript
Angular 数据请求的实现方法
May 07 #Javascript
You might like
php简单对象与数组的转换函数代码(php多层数组和对象的转换)
2011/05/18 PHP
php跨站攻击实例分析
2014/10/28 PHP
PHP合并discuz用户脚本的方法
2015/08/04 PHP
JavaScript中json对象和string对象之间相互转化
2012/12/26 Javascript
S2SH整合JQuery+Ajax实现登录验证功能实现代码
2013/01/30 Javascript
jQuery把表单元素变为json对象
2013/11/06 Javascript
再探JavaScript作用域
2014/09/24 Javascript
浏览器缩放检测的js代码
2014/09/28 Javascript
基于jQuery实现多标签页切换的效果(web前端开发)
2016/07/24 Javascript
angular基于路由控制ui-router实现系统权限控制
2016/09/27 Javascript
原生js验证简洁注册登录页面
2016/12/17 Javascript
详解webpack+vue-cli项目打包技巧
2017/06/17 Javascript
微信小程序实现富文本图片宽度自适应的方法
2019/01/20 Javascript
python读取与写入csv格式文件的示例代码
2017/12/16 Python
解决Pycharm中import时无法识别自己写的程序方法
2018/05/18 Python
python opencv实现图片旋转矩形分割
2018/07/26 Python
python对日志进行处理的实例代码
2018/10/06 Python
Python日志无延迟实时写入的示例
2019/07/11 Python
Pytorch实现各种2d卷积示例
2019/12/30 Python
django自定义非主键自增字段类型详解(auto increment field)
2020/03/30 Python
jupyter notebook 参数传递给shell命令行实例
2020/04/10 Python
python中翻译功能translate模块实现方法
2020/12/17 Python
python Scrapy爬虫框架的使用
2021/01/21 Python
美国电视购物:QVC
2017/02/06 全球购物
世界上最好的精品店:Shoptiques
2018/02/05 全球购物
火山咖啡:Volcanica Coffee
2019/10/29 全球购物
荷兰度假屋租赁网站:Aan Zee
2020/02/28 全球购物
美国婴儿和儿童服装购物网站:PatPat
2020/10/01 全球购物
教师自荐书
2013/10/08 职场文书
学校四群教育实施方案
2014/06/12 职场文书
普通话宣传标语
2014/06/26 职场文书
竞选大学学委演讲稿
2014/09/13 职场文书
2014镇党委书记党建工作汇报材料
2014/11/02 职场文书
企业开业庆典答谢词
2015/01/20 职场文书
物业接待员岗位职责
2015/04/15 职场文书
python 制作一个gui界面的翻译工具
2021/05/14 Python