时间:2021-05-26
在开发过程中发现路径中带有/#/的标示,而且还去不掉,很丑陋。
众所周知,vue-router有两种模式,hash模式和history模式。
带#的则是hash模式。
将router中的mode设置为history就可以了
接下来有个问题,界面一刷新,就变404了!!!!
网上搜了下,需要对后端环境进行一个配置。
这里只列举nginx的配置,其他的配置点击这里去官网看
先配置config/index.js
修改assetsPublicPath为根目录
module.exports = { build: { env: require('./prod.env'), index: path.resolve(__dirname, '../dist/index.html'), assetsRoot: path.resolve(__dirname, '../dist'), assetsSubDirectory: 'static', assetsPublicPath: '/', // hash 模式会默认的在此处 添加为 assetsPublicPath: './' productionSourceMap: true, ... }}然后配置nignx
server { listen 0.0.0.0:12345; location / { root /home/我的应用跟目录; try_files $uri $uri/ /index.html =404; // 这个是重点 } error_page 404 /index.html}Url再也没有#了,多完美
总结
以上所述是小编给大家介绍的Vue 去除路径中的#号,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
一、如何去除vue项目中访问地址的#vue2中在路由配置中添加mode(vue-cli创建的项目在src/router/index.js)exportdefau
vue的默认配置是使用hash模式,这样我们访问的时候都带有了一个#号,再支付回调的地址或者其他原因不支持#号或者不喜欢#号这种模式,优势就出现了需要去除#号,
开发场景当使用Vue框架进行项目开发时,在vue.config.js中配置好了路径别名后,到其他页面引入组件、引入css、引入静态文件路径时,使用路径别名不会智
vue中嵌套iframe,将要嵌套的文件放在static下面。src可以使用相对路径,也可使用服务器根路径http:localhost:8088/…补充知识:关
vue-router是Vue.js官方的路由插件,适合用于构建标签页应用。Vue的标签页应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来,v