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 相关文章推荐
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
Mar 25 Javascript
关于ExtJS4.1:快捷键支持的问题
Apr 24 Javascript
使用JavaScript 编写简单计算器
Nov 24 Javascript
浅谈jQuery构造函数分析
May 11 Javascript
解决jQuery ajax请求在IE6中莫名中断的问题
Jun 20 Javascript
BootStrap的select2既可以查询又可以输入的实现代码
Feb 17 Javascript
基于jQuery实现瀑布流页面
Apr 11 jQuery
JS去掉字符串前后空格、阻止表单提交的实现代码
Jun 08 Javascript
json 带斜杠时如何解析的实现
Aug 12 Javascript
JS替换字符串中指定位置的字符(多种方法)
May 28 Javascript
js实现限定范围拖拽的示例
Oct 26 Javascript
vue使用节流函数的踩坑实例指南
May 20 Vue.js
简单谈谈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输入流php://input使用示例(php发送图片流到服务器)
2013/12/25 PHP
一个不易被发现的PHP后门代码解析
2014/07/05 PHP
浅谈php提交form表单
2015/07/01 PHP
php正则匹配文章中的远程图片地址并下载图片至本地
2015/09/29 PHP
PHP实现的DES加密解密实例代码
2016/04/06 PHP
JavaScript中void(0)的具体含义解释
2007/02/27 Javascript
javascript学习笔记(三)显示当时时间的代码
2011/04/08 Javascript
js中单引号与双引号冲突问题解决方法
2013/10/04 Javascript
Node.js文件操作详解
2014/08/16 Javascript
jquery常用方法及使用示例汇总
2014/11/08 Javascript
基于JavaScript实现生成名片、链接等二维码
2015/09/20 Javascript
JS简单获取及显示当前时间的方法
2016/08/03 Javascript
JS实现六边形3D拖拽翻转效果的方法
2016/09/11 Javascript
Node.JS文件系统解析实例详解
2017/05/15 Javascript
基于Axios 常用的请求方法别名(详解)
2018/03/13 Javascript
深入理解使用Vue实现Context-Menu的思考与总结
2019/03/09 Javascript
vue+高德地图写地图选址组件的方法
2019/05/18 Javascript
零基础写python爬虫之爬虫的定义及URL构成
2014/11/04 Python
python中getaddrinfo()基本用法实例分析
2015/06/28 Python
Python多版本开发环境管理工具介绍
2019/07/03 Python
python随机数分布random均匀分布实例
2019/11/27 Python
python3中使用__slots__限定实例属性操作分析
2020/02/14 Python
Python如何用filter函数筛选数据
2020/03/05 Python
python批量修改xml属性的实现方式
2020/03/05 Python
python使用gdal对shp读取,新建和更新的实例
2020/03/10 Python
Python用来做Web开发的优势有哪些
2020/08/05 Python
轻松掌握CSS3中的字体大小单位rem的使用方法
2016/05/24 HTML / CSS
建筑文秘专业个人求职信范文
2013/12/28 职场文书
小学美术教学反思
2014/02/01 职场文书
机械设计及其自动化求职推荐信
2014/02/17 职场文书
合作协议书范文
2014/08/20 职场文书
党员教师自我剖析材料
2014/09/29 职场文书
2016年幼儿园庆六一开幕词
2016/03/04 职场文书
goland 设置project gopath的操作
2021/05/06 Golang
pytorch 实现在测试的时候启用dropout
2021/05/27 Python
详解运行Python的神器Jupyter Notebook
2021/06/03 Python