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 相关文章推荐
基于Jquery的简单&简陋Tabs插件代码
Feb 09 Javascript
Jquery多选框互相内容交换的实例代码
Jul 04 Javascript
javascript的内存管理详解
Aug 07 Javascript
巧用js提交表单轻松解决一个页面有多个提交按钮
Nov 17 Javascript
javascript事件函数中获得事件源的两种不错方法
Mar 17 Javascript
jquery广告无缝轮播实例
Jan 05 Javascript
js实现点击切换checkbox背景图片的简单实例
May 08 Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
Jul 21 Javascript
Node.Js生成比特币地址代码解析
Apr 21 Javascript
微信小程序实现传递多个参数与事件处理
Aug 12 Javascript
layui的表单提交以及验证和修改弹框的实例
Sep 09 Javascript
javascript实现简易计算器功能
Sep 23 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
国王的咖啡这么大来头,名字的由来是什么
2021/03/03 咖啡文化
我的论坛源代码(一)
2006/10/09 PHP
php下使用SMTP发邮件的代码
2008/01/10 PHP
php 获得汉字拼音首字母的函数
2009/08/01 PHP
PHP计算2点经纬度之间的距离代码
2013/08/12 PHP
php顺序查找和二分查找示例
2014/03/27 PHP
PHP生成随机数的方法实例分析
2015/01/22 PHP
原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
2019/03/07 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
2019/05/29 PHP
js中判断控件是否存在
2010/08/25 Javascript
为超链接加上disabled后的故事
2010/12/10 Javascript
自动刷新网页,自动刷新当前页面,JS调用
2013/06/24 Javascript
js实现在字符串中提取数字
2013/11/05 Javascript
js判断url是否有效的两种方法
2014/03/04 Javascript
jquery使用each方法遍历json格式数据实例
2015/05/18 Javascript
js代码实现随机颜色的小方块
2015/07/30 Javascript
Bootstrap富文本组件wysiwyg数据保存到mysql的方法
2016/05/09 Javascript
原生JS 购物车及购物页面的cookie使用方法
2017/08/21 Javascript
JS+CSS实现网页加载中的动画效果
2017/10/27 Javascript
极简主义法编写JavaScript类
2017/11/02 Javascript
layer.open 按钮的点击事件关闭方法
2018/08/17 Javascript
Vue瀑布流插件的使用示例
2018/09/19 Javascript
JS字典Dictionary类定义与用法示例
2019/02/01 Javascript
Node.js 多线程完全指南总结
2019/03/27 Javascript
vue router 通过路由来实现切换头部标题功能
2019/04/24 Javascript
了解JavaScript表单操作和表单域
2019/05/27 Javascript
详解微信小程序入门从这里出发(登录注册、开发工具、文件及结构介绍)
2020/07/21 Javascript
vue+element-ui JYAdmin后台管理系统模板解析
2020/07/28 Javascript
python并发2之使用asyncio处理并发
2017/12/21 Python
使用pycharm生成代码模板的实例
2018/05/23 Python
Pandas+Matplotlib 箱式图异常值分析示例
2019/12/09 Python
Python基于类路径字符串获取静态属性
2020/03/12 Python
新品发布会策划方案
2014/06/08 职场文书
领导干部群众路线教育实践活动剖析材料
2014/10/10 职场文书
2019个人工作总结
2019/06/21 职场文书
2019让人心动的商业计划书
2019/06/27 职场文书