详解vue项目的构建,打包,发布全过程


Posted in Javascript onNovember 23, 2017

很多朋友对于VUE项目的一系列流程不熟悉,小编根据网友提出的问题,整理了关于vue项目的构建打包发布全过程,希望对你有用。

一、vue项目的创建

1、首先第一肯定是要有Node.js及npm这个不多说了

2、安装脚手架

详解vue项目的构建,打包,发布全过程

此时可以直接浏览-但是现在肯定有很多小白想将他发布到gitHub上并可以浏览,使用vue全家桶制作自己的博客。 现在就有我来说说如何讲vue项目发布到github上 之前写过vue环境搭建 可以参考: vue环境搭建

二、vue项目的打包

1、大家都知道使用npm run build进行打包,这个时候你直接打开dist/下的index.html,会发现文件可以打开,但是所有的js,css,img等路径有问题是指向根目录的,

此时需要修改config/index.js里的assetsPublicPath的字段,初始项目是/他是指向项目根目录的也是为什么会出现错误,这时改为./

./ 当前目录 ../ 父级目录 / 根目录

根目录:在计算机的文件系统中,根目录指逻辑驱动器的最上一级目录,它是相对子目录来说的;

它如同一棵大树的“根”一般,所有的树杈以它为起点,故被命名为根目录。以微软公司开发的Windows操作系统为例:

打开我的计算机(计算机),双击C盘就进入C盘的根目录。双击D盘就进入D盘的根目录

build: {
  env: require('./prod.env'),
  index: path.resolve(__dirname, '../dist/index.html'),
  assetsRoot: path.resolve(__dirname, '../dist'),
  assetsSubDirectory: 'static',
  assetsPublicPath: './',
  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
 }

在从dist根目录打开index文件就可以访问了。

三、github pages

1、首页创建一个仓库,此处直接忽略

详解vue项目的构建,打包,发布全过程

2、在这里选择master或者/doc 上传代码到master

详解vue项目的构建,打包,发布全过程

3、上面有一行域名就是你自己的页面可以看到自己发布的项目

详解vue项目的构建,打包,发布全过程

四、自定义域名

1、这个时候就可以浏览自己的项目了,但是

username.github.io/xxx/dist

这样的地址着实不是很美观,大家可以去阿里云上,自己买个域名,解析一下,网上都有,可以进行自定义的域名,来制作的自己的博客,代码部署到github上。这篇文章这里就先不做讲解了,有想使用自定义域名,也可以私信我。

Javascript 相关文章推荐
下载网站打开页面后间隔多少时间才显示下载链接地址的代码
Apr 25 Javascript
js 遍历对象的属性的代码
Dec 29 Javascript
js函数的延迟加载实现代码
Oct 11 Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
Jan 29 Javascript
JQuery中绑定事件(bind())和移除事件(unbind())
Feb 27 Javascript
微信小程序 wx.login解密出现乱码的问题解决办法
Mar 10 Javascript
微信小程序 自动登陆PHP源码实例(源码下载)
May 08 Javascript
package.json文件配置详解
Jun 15 Javascript
[js高手之路]设计模式系列课程-发布者,订阅者重构购物车的实例
Aug 29 Javascript
jQuery实现获取form表单内容及绑定数据到form表单操作分析
Jul 03 jQuery
小程序按钮避免多次调用接口和点击方案实现(不用showLoading)
Apr 15 Javascript
vue实现一个获取按键展示快捷键效果的Input组件
Jan 13 Vue.js
Bootstrap实现下拉菜单多级联动
Nov 23 #Javascript
bootstrap select下拉搜索插件使用方法详解
Nov 23 #Javascript
基于Bootstrap实现城市三级联动
Nov 23 #Javascript
bootstrap-Treeview实现级联勾选
Nov 23 #Javascript
基于vue-cli创建的项目的目录结构及说明介绍
Nov 23 #Javascript
sublime text配置node.js调试(图文教程)
Nov 23 #Javascript
Vue代码分割懒加载的实现方法
Nov 23 #Javascript
You might like
两种php调用Java对象的方法
2006/10/09 PHP
PHP与MySQL开发中页面乱码的产生与解决
2008/03/27 PHP
php获取linux命令结果的实例
2017/03/13 PHP
总结一些PHP中好用但又容易忽略的小知识
2017/06/02 PHP
浅谈PHP中pack、unpack的详细用法
2018/03/12 PHP
基于laravel belongsTo使用详解
2019/10/18 PHP
JQuery textlimit 显示用户输入的字符数 限制用户输入的字符数
2009/05/14 Javascript
JavaScript 常用函数库详解
2009/10/21 Javascript
JQuery插件Style定制化方法的分析与比较
2012/05/03 Javascript
javascript中对Date类型的常用操作小结
2016/05/19 Javascript
jQuery 表单序列化实例代码
2017/06/11 jQuery
React native ListView 增加顶部下拉刷新和底下点击刷新示例
2018/04/27 Javascript
JavaScript使用面向对象实现的拖拽功能详解
2019/06/12 Javascript
vue-cli —— 如何局部修改Element样式
2020/10/22 Javascript
python在多玩图片上下载妹子图的实现代码
2013/08/13 Python
Python中使用item()方法遍历字典的例子
2014/08/26 Python
Python多进程池 multiprocessing Pool用法示例
2018/09/07 Python
浅析Python3中的对象垃圾收集机制
2019/06/06 Python
Python 常用模块 re 使用方法详解
2019/06/06 Python
flask 框架操作MySQL数据库简单示例
2020/02/02 Python
Python cookie的保存与读取、SSL讲解
2020/02/17 Python
通过python调用adb命令对App进行性能测试方式
2020/04/23 Python
基于Python爬虫采集天气网实时信息
2020/06/05 Python
使用SQLAlchemy操作数据库表过程解析
2020/06/10 Python
Python叠加矩形框图层2种方法及效果
2020/06/18 Python
Python实现自动签到脚本的示例代码
2020/08/19 Python
丝芙兰法国官网:SEPHORA法国
2016/09/01 全球购物
欧洲第一中国智能手机和平板电脑网上商店:CECT-SHOP
2018/01/08 全球购物
教师纪念9.18事件演讲稿范文
2014/09/14 职场文书
2015年个人剖析材料范文
2014/12/29 职场文书
三好学生评语大全
2014/12/29 职场文书
肖申克的救赎观后感
2015/06/02 职场文书
恰同学少年观后感
2015/06/08 职场文书
mysql 生成连续日期及变量赋值
2022/03/20 MySQL
【海涛dota解说】一房久违的影魔魂守二连发
2022/04/01 DOTA
Redis入门基础常用操作命令整理
2022/06/01 Redis