两种模式的区别
1.hash模式
1.网址中带/#/就是hash模式 #/后面的就是hash值
2.hash值不会包含在HTTP请求中 :就是不会传递给服务器做请求参数
3.兼容性好 无论在那个页面刷新的时候重新请求服务器不会因为服务器没有那个路径报错(404)
4.有可能在分享网址给别人时因为有#会被标记为不合法
2.history模式
1.网址以/分割开
2.兼容性比hash略差
3.应用上线时需要后端人员处理在页面刷新时路径请求不到报(404)的问题
扩展:nodejs服务器解决在history模式时处理请求报错问题
在前端功能页面都完成准备上线的时候在
扫描二维码关注公众号,回复:
14704482 查看本文章
终端输入npm run build 进行文件打包生成 dist文件夹里面有html js css 字体图标文件
把生成的文件发给后端放服务器上运行
在服务器终端执行
npm i express 安装express包
npm i connect-history-api-fallback 安装处理history包
const express = require("express")
const history = require("connect-history-api-fallback")
const app = express()
app.use(history())
app.use(express.static(__dirname+"/static"))
app.get("/person",(req,res)=>{
res.send({
name:"小白",
age:"18"
})
})
app.listen(8080,(err)=>{
if(!err) console.log("服务器启动成功!")
})
启动服务器 node server 就可以了