vue本地打开build后生成的dist文件夹index.html问题


Posted in Javascript onSeptember 04, 2019

1.问题描述:

npm run build 在dist 文件生成了 index 和 static 文件夹,为什么本地打开不了,给后端就能打开?

如何才能像访问 npm run dev 的地址那样访问?

2.种简单方法

2.1 修改配置在本地访问

更改一些路径参数后,然后再次运行npm run build 就可以在本地打开index.html

改哪里?

config/index.js文件

build: {
 assetsPublicPath: '/'
}

改成

build: {
 assetsPublicPath: './'
}

修改后再次运行 npm run build

双击 index.html 即可

2.2 通过在dist 目录中起服务访问

step1:

在dist 文件中添加 server.js

var express = require('express');
 var app = express();
 const hostname = 'localhost';
 const port = 8080;
 app.use(express.static('./'));
 app.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}`);
 });

step 2:

在dist 路径下,npm install express

step 3:

node server

3.其他:

3.1 本地访问不足

如果ajax请求的数据是通过访问本地文件伪造的,那么会报跨域错误

不支持跨域读取本地data

本地访问路径如:

file:///Users/Downloads/vue-travel-master/dist/index.html

3.2 生产环境不支持proxyTable

config/index.js 中,只有开发环境dev中配置了proxyTable,支持访问代理路径

但是在 build 中配置无效,不支持代理地址

比如我在开发环境中请求数据

axios.get('/api/index.json?city=' + this.city)

开发环境的proxyTable:

proxyTable: {
 '/api': {
 target: 'http://localhost:8080',
 changeOrigin:true,//允许跨域
 pathRewrite: {
  '^/api': '/static/mock'
 }
 }

访问路径会替换成  http://localhost:8080/static/mock/index.json

但是生产环境不支持这样,路径要写全: 

axios.get('/static/mock/index.json?city=' + this.city)

这样在dist目录下 node server 就可以访问了和 npm run dev 的效果是一模一样的!

起服务访问地址:

http://localhost:8080/static/js/app.5115f466b0f6ef56da51.js

3.3 express 配置

var express = require('express'); 
var app = express(); 
const hostname = 'localhost';
const port = 8080;
//Express 提供了内置的中间件 express.static 来设置静态文件
app.use(express.static('./'));

app.listen(port, hostname, () => {
 console.log(`Server running at http://${hostname}:${port}`);
});
express.static('./')

express 会在静态资源目录下查找文件,即server.js的上层路径dist目录,现在你可以加载dist 目录下的文件了,如:

http://localhost :8080/static/mock/index.json?city=%E4%B8%8A%E6%B5%B7

访问路径为:

——dist 
 ——static 
  ——css
  ——js
  ——mock
   ——a.json
 ——index.html 
 ——server.js

4. 代码

4.1 可运行代码链接

可下载运行试试

总结

以上所述是小编给大家介绍的vue本地打开build后生成的dist文件夹index.html问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
js将字符串转成正则表达式的实现方法
Nov 13 Javascript
javascript中实现兼容JAVA的hashCode算法代码分享
Aug 11 Javascript
简介AngularJS的视图功能应用
Jun 17 Javascript
前端设计师们最常用的JS代码汇总
Sep 25 Javascript
Javascript操作dom对象之select全面解析
Apr 24 Javascript
jquery.validate.js 多个相同name的处理方式
Jul 10 jQuery
解决vue router使用 history 模式刷新后404问题
Jul 19 Javascript
angular4模块中给标签添加背景图的实现方法
Sep 15 Javascript
用JavaScript做简易的购物车的代码示例
Oct 20 Javascript
AngularJS使用ng-repeat遍历二维数组元素的方法详解
Nov 11 Javascript
Vue事件修饰符native、self示例详解
Jul 09 Javascript
JavaScript实现放大镜效果代码示例
Apr 29 Javascript
简单谈谈javascript高级特性
Sep 04 #Javascript
在layui中使用form表单监听ajax异步验证注册的实例
Sep 03 #Javascript
解决mui框架中switch开关通过js控制开或者关状态时小圆点不动的问题
Sep 03 #Javascript
mui js控制开关状态、修改switch开关的值方法
Sep 03 #Javascript
Layui给switch添加响应事件的例子
Sep 03 #Javascript
layui--js控制switch的切换方法
Sep 03 #Javascript
Vue使用Clipboard.JS在h5页面中复制内容实例详解
Sep 03 #Javascript
You might like
php.ini中的php-5.2.0配置指令详解
2008/03/27 PHP
CI(CodeIgniter)框架配置
2014/06/10 PHP
Yii框架学习笔记之应用组件操作示例
2019/11/13 PHP
如何利用PHP实现上传图片功能详解
2020/09/24 PHP
document.documentElement && document.documentElement.scrollTop
2007/12/01 Javascript
基于PHP+Jquery制作的可编辑的表格的代码
2011/04/10 Javascript
js 验证密码强弱的小例子
2013/03/21 Javascript
jquery ui对话框实例代码
2013/05/10 Javascript
解析window.open的使用方法总结
2013/06/19 Javascript
jquery 提示信息显示后自动消失的具体实现
2013/12/18 Javascript
js从Cookies里面取值的简单实现
2014/06/30 Javascript
基于AngularJS实现页面滚动到底自动加载数据的功能
2015/10/16 Javascript
jQuery插件EasyUI校验规则 validatebox验证框
2015/11/29 Javascript
Node.js开发教程之基于OnceIO框架实现文件上传和验证功能
2016/11/30 Javascript
JS中实现函数return多个返回值的实例
2017/02/21 Javascript
Vue.js中轻松解决v-for执行出错的三个方案
2017/06/09 Javascript
修改UA在PC中访问只能在微信中打开的链接方法
2017/11/27 Javascript
vue升级之路之vue-router的使用教程
2018/08/14 Javascript
详解Vue用cmd创建项目
2019/02/12 Javascript
vue-cli history模式实现tomcat部署报404的解决方式
2019/09/06 Javascript
微信小程序授权登陆及每次检查是否授权实例代码
2019/09/18 Javascript
JS函数进阶之继承用法实例分析
2020/01/15 Javascript
python读取word文档的方法
2015/05/09 Python
Python中easy_install 和 pip 的安装及使用
2017/06/05 Python
python爬虫之urllib库常用方法用法总结大全
2018/11/14 Python
python实现的生成word文档功能示例
2019/08/23 Python
Django项目创建及管理实现流程详解
2020/10/13 Python
python输出国际象棋棋盘的实例分享
2020/11/26 Python
Application Cache未缓存文件无法访问无法加载问题
2014/05/31 HTML / CSS
JINS眼镜官方网站:日本最大的眼镜邮购
2016/10/14 全球购物
大雁塔导游词
2015/02/04 职场文书
商务英语求职信范文
2015/03/19 职场文书
2016年大学迎新晚会工作总结
2015/10/15 职场文书
Python深度学习之Pytorch初步使用
2021/05/20 Python
为什么MySQL选择Repeatable Read作为默认隔离级别
2021/07/26 MySQL
Go微服务项目配置文件的定义和读取示例详解
2022/06/21 Golang