使用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处理table表格的代码
Dec 06 Javascript
通过百度地图获取公交线路的站点坐标的js代码
May 11 Javascript
基于jquery DOM写的类似微博发布的效果
Oct 20 Javascript
js判断FCKeditor内容是否为空的两种形式
May 14 Javascript
ajaxFileUpload.js插件支持多文件上传的方法
Sep 02 Javascript
jQuery EasyUI框架中的Datagrid数据表格组件结构详解
Jun 09 Javascript
JavaScript 对象详细整理总结
Sep 29 Javascript
深入理解JavaScript定时机制
Oct 27 Javascript
使用vue.js实现checkbox的全选和多个的删除功能
Feb 17 Javascript
layui数据表格重载实现往后台传参
Nov 15 Javascript
vue 虚拟DOM的原理
Oct 03 Javascript
创建与框架无关的JavaScript插件
Dec 01 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实现的MySQL通用查询程序
2007/03/11 PHP
Uchome1.2 1.5 代码学习 common.php
2009/04/24 PHP
PHP实现今天是星期几的几种写法
2013/09/26 PHP
PHP连接SQLServer2005方法及代码
2013/12/26 PHP
CSDN轮换广告图片轮换效果
2007/03/27 Javascript
运用jquery实现table单双行不同显示并能单行选中
2009/07/25 Javascript
javascript addBookmark 加入收藏 多浏览器兼容
2009/08/15 Javascript
Javascript获取HTML静态页面参数传递值示例
2013/08/18 Javascript
extjs中form与grid交互数据(record)的方法
2013/08/29 Javascript
IE6下拉框图层问题探讨及解决
2014/01/03 Javascript
改变状态栏文字的js代码
2014/06/13 Javascript
JS在可编辑的div中的光标位置插入内容的方法
2014/11/20 Javascript
jquery轮播的实现方式 附完整实例
2016/07/28 Javascript
Angular的$http与$location
2016/12/26 Javascript
vue router 配置路由的方法
2018/07/26 Javascript
js计算两个日期间的天数月的实例代码
2018/09/20 Javascript
详解nodejs解压版安装和配置(带有搭建前端项目脚手架)
2018/12/06 NodeJs
Javascript原型链及instanceof原理详解
2020/05/25 Javascript
详解JS预解析原理
2020/06/16 Javascript
JavaScript点击按钮生成4位随机验证码
2021/01/28 Javascript
Python MD5文件生成码
2009/01/12 Python
使用python的chardet库获得文件编码并修改编码
2014/01/22 Python
使用python实现递归版汉诺塔示例(汉诺塔递归算法)
2014/04/08 Python
Python实现的HTTP并发测试完整示例
2020/04/23 Python
Tornado高并发处理方法实例代码
2018/01/15 Python
Django如何配置mysql数据库
2018/05/04 Python
Pandas之ReIndex重新索引的实现
2019/06/25 Python
python数据爬下来保存的位置
2020/02/17 Python
Python工程师必考的6个经典面试题
2020/06/28 Python
中专生学习生活的自我评价分享
2013/10/27 职场文书
工厂厂长岗位职责
2013/11/08 职场文书
三年级评语大全
2014/04/23 职场文书
初一语文教学反思
2016/03/03 职场文书
sqlserver2017共享功能目录路径不可改的解决方法
2021/04/16 SQL Server
python tkinter Entry控件的焦点移动操作
2021/05/22 Python
Vue3如何理解ref toRef和toRefs的区别
2022/02/18 Vue.js