Vue 项目打包发布移动 App——npm run build打包 & vue.config.js文件中配置相对路径publicPath为空字符串 & 在 public中添加HBuilderX的打包配置文件manifest.json 文件

一、 如果需要发布移动App,则在 public 中添加 manifest.json 文件
参考文档:http://ask.dcloud.net.cn/article/94

二、在项目的 vue.config.js 文件中

在vue官网中,生态系统——>Vue CLI——>配置参考——>publicpath(打包配置参考),部署应用包时的基本 URL

https://cli.vuejs.org/zh/config/#publicpath

默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上,例如 https://www.my-app.com/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.my-app.com/my-app/,则设置 publicPath/my-app/

这个值也可以被设置为空字符串 ('') 或是相对路径 ('./'),这样所有的资源都会被链接为相对路径,这样打出来的包可以被部署在任意路径,也可以用在类似 Cordova hybrid 应用的文件系统中。

  • vue.config.js 和 VueCLI 打包的配置文件

    • 如果需要修改配置项则添加这个文件
    • 如果不需要修改,则不用添加
  • 改什么
    • 大多数都是和 webpack 配置相关的配置项
  • 怎么改
    • 配置参考

第一步:vue.config.js中:

// vue-cli 配置
/*** 配置文档:https://cli.vuejs.org/zh/config/*/module.exports = {lintOnSave: false,/*** / 用于部署在 HTTP 服务中* 如果是混合应用,则将其设置为相对路径 ./  或 ''* 参考文档:https://cli.vuejs.org/zh/config/#publicpath*/publicPath: './'
}

三、将 Vue 项目打包(构建为纯粹的 html、css、js)

第二步:网页不支持vue文件,需要打包为html文件

npm run build

注:

  • 打包后,会默认清空dist文件夹里的文件内容
  • 打包后,public文件夹 中的文件不会被编译,会自动复制到dist文件夹里
  • 可以把配置文件manifest.json 文件,添加到public文件夹 中

打开新的命令行 可简写:$hs

$ http-server

http-server 是一个简单的零配置命令行http服务器

网址:https://github.com/http-party/http-server

全局安装

npm install --global http-server

打包后,产生 dist 结果:

  • 入口文件就是index.html

参考文档:https://cli.vuejs.org/zh/guide/deployment.html#%E6%9C%AC%E5%9C%B0%E9%A2%84%E8%A7%88

四、真机调试运行进行测试

五、发布

发布移动 App
结合使用 DCloud 平台

1. 在 HBuilder 中打开 dist 目录
2. 选择 发行 -> 原生 App(云打包)
3. 等待结构拿到打包的安装文件
4. 最后去手机安装测试
5. 最后根据需要发布到应用商店

打包移动 App,准备工作步骤总结:

第一步:在打包项目的文件夹中,启动命令行

第二步:命令行中输入 npm run build,打包vue项目文件

  • 产生dist文件夹,里面包含css文件夹、js文件夹、index.html文件

  • 没有生成manifest.json 打包配置文件,需要手动添加

    • index.html文件中的src

      • src=/js/chunk-vendors.5dd9b266.js里的 / ,指的是根路径

      localhost:8080/abc/index.html

      注:只有第一个 / ,才是根路径;域名是根

第三步:新打开一个命令行,全局安装http-server

npm install --global http-server

第四步:命令行中输入$ http-server$ hs,开启一个web的测试服务器

显示如下,端口号为8080

http://127.0.0.1:8080
http://192.168.151.35:8080
http://10.253.1.251:8080

第五步:把 npm run build打包后生成的dist文件夹名称改为abc

第六步:在浏览器网址中输入:localhost:8080/abc/index.html,页面显示为空,F12检查显示为404

第七步:在vue-cli的配置文件vue.config.js中,进行配置相对路径,publicPath值为 ./空字符串

module.exports = {
lintOnSave: false,
/**

  • / 用于部署在 HTTP 服务中
  • 如果是混合应用,则将其设置为相对路径 ./ 或 ‘’
  • 参考文档:https://cli.vuejs.org/zh/config/#publicpath
    */
    publicPath: ‘./’
    }

第八步:把HBuilderX的打包配置文件manifest.json 文件复制到dist里面

第九步:vue-cli的配置文件有修改,需要重新打包

npm run build

此时,会把dist里的文件进行自动删除manifest.json 文件

第十步:把HBuilderX的打包配置文件manifest.json 文件复制到publice文件夹里面,此时

  • index.html文件中的src路径,改为相对路径

    //  src=/js/chunk-vendors.5dd9b266.js里的  **/**  ,指的是根路径
    src=js/app.5c8db14b.js
    

(三)01 -Vue项目打包发布移动App——vue.config.js中配置相对路径publicPath为空字符串 在public中添加HBuilderX的打包配置文件manifest.json相关推荐

  1. webpack来打包你的vue项目,如发现你的vendor.js过大

    1.如果你使用了webpack来打包你的vue项目,如发现你的vendor.js过大则可以参考本文的解决方案. 2.造成过大的原因是因为在main.js导入第三库太多时,webpack合并js时生成了 ...

  2. 六十四、Vue项目去哪儿网App开发准备

    2020/10/20 . 周二.今天又是奋斗的一天. @Author:Runsen @Date:2020/10/20 写在前面:我是「Runsen」,热爱技术.热爱开源.热爱编程.技术是开源的.知识是 ...

  3. 六十五、完成Vue项目去哪儿网App首页开发(来源:慕课网)

    2020/10/21. 周三.今天又是奋斗的一天. @Author:Runsen @Date:2020/10/21 写在前面:我是「Runsen」,热爱技术.热爱开源.热爱编程.技术是开源的.知识是共 ...

  4. Vue.js教程-Vue项目的目录结构和.vue文件的构成

    Vue.js教程-Vue项目的目录结构和.vue文件的构成 前言 Vue项目的目录结构(Vue-cli3/4版本) .vue文件的构成 Html区域(template) script区域 export ...

  5. Vue项目 跨域 解决方案与 vue.config.js 配置解析

    为什么会出现跨域? 出于浏览器的同源策略限制.同源策略(Sameoriginpolicy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响.可以说 ...

  6. vue项目结构php写哪里,Vue项目的创建,以及项目目录结构的分析

    Vue项目环境搭建""" node ~~ python:node是用c++编写用来运行js代码的 npm(cnpm) ~~ pip:npm是一个终端应用商城,可以换国内源 ...

  7. vue项目结构php写哪里,vue项目结构(详细教程)

    这篇文章主要介绍了vue初尝试--项目结构的相关知识,需要的朋友可以参考下 新建一个项目之后,我们来看一下项目的目录结构 几个主要文件的内容 index.html文件(入口文件,系统进入之后先进入in ...

  8. vue项目引入不符合ES6模块化标准的JS文件

    vue项目引入不符合ES6模块化标准的JS文件 实现方式 实现原理 实现方式 要引入的文件放在public目录下,在index.html中通过script标签引入 实现原理 参考vue官网–处理静态资 ...

  9. Vue-cli中 vue.config.js 的配置详解

    1. Vue-cli2 升级到 Vue-cli3+ 1.1 卸载旧版本 Vue CLI 的包名称由 vue-cli 改成了 @vue/cli. 如果你已经全局安装了旧版本的 vue-cli (1.x ...

最新文章

  1. WKWebview 的使用及坑
  2. 在线引入bootstrap包
  3. 11月27日struts项目练习评审
  4. 志愿填报显示服务器错误,高分落榜案例:志愿填报常见的3个低级错误
  5. 渗透测试小马(一句话)篇
  6. 会java学scala多久_Scala中超时的未来
  7. 通过 Azure Pipelines 实现持续集成之docker容器化
  8. jdbc链接mysql的第二个例子。使用properties文件存放连接信息。使用jar文件一个
  9. 20181030-4 每周例行报告
  10. C++11 变参模板
  11. LINUX下载编译ffmpeg(doubango)
  12. 香农辅助定理、KL散度和Jensen不等式
  13. Idea终端中无法使用maven命令问题解决
  14. 字幕的嵌入AVI转RMVB
  15. 【数据结构—图】拓扑Topo排序
  16. win10(家庭版)打开本地组策略失败的处理方法
  17. windows10 禁用Device/Credential Guard解决方案
  18. MIPI_DSI协议简要介绍
  19. 【180730】WinForm打地鼠小游戏源码
  20. linux zip/unzip命令详解

热门文章

  1. 总结:linux笔记-003
  2. django中form表单post无法提交
  3. 计算机软件扫描功能比较好,超高口碑的4款手机扫描软件,到底哪个效果好
  4. macOS Big Sur 正式版来袭,真的是有一种电脑 iPad 化的感觉
  5. Could not load file or assembly #39;Microsoft.VisualBasic, ----jexus使用报错
  6. 互联网攻陷中老年人群:奶奶抢红包,外婆学美图
  7. 在本地安装divi主题 —— 详细步骤
  8. 2021年墨西哥经济发展研究报告
  9. 卖货还能“带股价”,天猫超市怎么做到的?
  10. Mac使用Microsoft Remote Desktop远程控制Win10电脑