VUE : vue-cli中去掉路由中的井号#操作


Posted in Javascript onSeptember 04, 2020

vue-cli项目中,如果想去掉url地址栏中的“#”我们可以用路由的 history 模式,这种模式充分利用 history.pushState API 来完成 URL 跳转而无须重新加载页面。

只需要在路由表中,加入一行代码即可。

VUE : vue-cli中去掉路由中的井号#操作

VUE : vue-cli中去掉路由中的井号#操作

补充知识:vue 打包部署去掉#注意事项

示例基于vue cli2.0脚手架生成的项目

1.vue项目中config文件下index.js中打包配置:

build: {
 // Template for index.html
 index: path.resolve(__dirname, '../dist/index.html'),
 
 // Paths
 assetsRoot: path.resolve(__dirname, '../dist'),
 assetsSubDirectory: 'static',
 assetsPublicPath: '/dist/', // 这个地方使用绝对路径 很重要!
 
 /**
  * Source Maps
  */
 
 productionSourceMap: true,
 // https://webpack.js.org/configuration/devtool/#production
 devtool: '#source-map',
 
 // Gzip off by default as many popular static hosts such as
 // Surge or Netlify already gzip all static assets for you.
 // Before setting to `true`, make sure to:
 // npm install --save-dev compression-webpack-plugin
 productionGzip: false,
 productionGzipExtensions: ['js', 'css'],
 
 // Run the build command with an extra argument to
 // View the bundle analyzer report after build finishes:
 // `npm run build --report`
 // Set to `true` or `false` to always turn it on or off
 bundleAnalyzerReport: process.env.npm_config_report
}

2.路由配置:router文件夹下index.js:

export default new Router({
 mode: 'history', // 去掉#,需要路由模式改为history
 base: '/dist/', // 这个配置也很重要,否则会出现页面空白情况
 scrollBehavior: () => ({ y: 0 }),
 routes: [
  {
   path: '/facebook',
   name: 'Facebook',
   component: Facebook
  },
  {
   path: '/google',
   name: 'Google',
   component: Google
  }
 ]
})

3.剩下的不懂 就要找你得运维或者后端开发小伙伴了,nginx配置:

server {
    listen 8080;
    server_name localhost;
    #charset koi8-r;
    #access_log logs/host.access.log main;
    #打包后的项目目录,一定记住这个地方带有项目名称
    root /Users/qiilee/Desktop/vue/dist;
    index index.html;
 
    location /dist {
        #这个地方没有项目名称,因为请求的时候如果请求:http://localhost:8080/dist ,nginx会查找/Users/qiilee/Desktop/vue/dist/目录下的数据
        root /Users/qiilee/Desktop/vue;
        try_files $uri $uri/ @router;
        index index.html;
    }
    //try_files $uri $uri/ @router;和下边部分很重要,没有这部分发布二级一下的路由会出现js加载,但是也没空白的情况
    location @router {
        rewrite ^.*$ /index.html last;
    }
  }

以上这篇VUE : vue-cli中去掉路由中的井号#操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery中SetTimeOut传参问题探讨
May 10 Javascript
js几秒以后倒计时跳转示例
Dec 26 Javascript
js sort 二维数组排序的用法小结
Jan 24 Javascript
jq实现酷炫的鼠标经过图片翻滚效果
Mar 12 Javascript
javascript使用正则表达式实现去掉空格之后的字符
Feb 15 Javascript
JQuery实现的图文自动轮播效果插件
Jun 19 Javascript
JavaScript实现添加及删除事件的方法小结
Aug 04 Javascript
基于JS实现简单的样式切换效果代码
Sep 04 Javascript
jquery+正则实现统一的表单验证
Sep 20 Javascript
Bootstrap风格的zTree右键菜单
Feb 17 Javascript
深入理解vue.js中$watch的oldvalue与newValue
Aug 07 Javascript
vue-router传参用法详解
Jan 19 Javascript
Vue利用localStorage本地缓存使页面刷新验证码不清零功能的实现
Sep 04 #Javascript
vue-cli3中配置alias和打包加hash值操作
Sep 04 #Javascript
vue深度监听(监听对象和数组的改变)与立即执行监听实例
Sep 04 #Javascript
Kettle中使用JavaScrip调用jar包对文件内容进行MD5加密的操作方法
Sep 04 #Javascript
解决vue中axios设置超时(超过5分钟)没反应的问题
Sep 04 #Javascript
在vue中axios设置timeout超时的操作
Sep 04 #Javascript
vue 路由meta 设置导航隐藏与显示功能的示例代码
Sep 04 #Javascript
You might like
PHP中for循环语句的几种变型
2006/11/26 PHP
php Http_Template_IT类库进行模板替换
2009/03/19 PHP
将一维或多维的数组连接成一个字符串的php代码
2010/08/08 PHP
php mail to 配置详解
2014/01/16 PHP
一个PHP实现的轻量级简单爬虫
2015/07/08 PHP
如何使用php脚本给html中引用的js和css路径打上版本号
2015/11/18 PHP
PHP模板引擎Smarty中变量的使用方法示例
2016/04/11 PHP
PHP 记录访客的浏览信息方法
2018/01/29 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
[原创]后缀就扩展名为js的文件是什么文件
2007/12/06 Javascript
通过JS 获取Mouse Position(鼠标坐标)的代码
2009/09/21 Javascript
jQuery ctrl+Enter shift+Enter实现代码
2010/02/07 Javascript
JavaScript模拟实现继承的方法
2015/03/30 Javascript
jquery插件validation实现验证身份证号等
2015/06/04 Javascript
基于jQuery仿淘宝产品图片放大镜代码分享
2020/06/23 Javascript
使用vue实现grid-layout功能实例代码
2018/01/05 Javascript
web前端vue之CSS过渡效果示例
2018/01/10 Javascript
JS实现简单获取最近7天和最近3天日期的方法
2018/04/18 Javascript
vue脚手架搭建过程图解
2018/06/06 Javascript
基于Nuxt.js项目的服务端性能优化与错误检测(容错处理)
2019/10/23 Javascript
angular组件间传值测试的方法详解
2020/05/07 Javascript
jQuery实现滑动开关效果
2020/08/02 jQuery
python类中super()和__init__()的区别
2016/10/18 Python
pandas dataframe的合并实现(append, merge, concat)
2019/06/24 Python
python3 深浅copy对比详解
2019/08/12 Python
opencv python 图片读取与显示图片窗口未响应问题的解决
2020/04/24 Python
简单的命令查看安装的python版本号
2020/08/28 Python
Ellos瑞典官网:北欧地区时尚、美容和住宅领域领先的电子商务网站
2019/11/21 全球购物
中医药大学市场营销专业自荐信
2013/09/29 职场文书
自我反省检讨书
2014/01/23 职场文书
生物技术专业求职信
2014/06/10 职场文书
铁路安全反思材料
2014/12/24 职场文书
元旦主持词开场白
2015/05/29 职场文书
2016年暑期见闻作文
2015/11/25 职场文书
SpringBoot中HttpSessionListener的简单使用方式
2022/03/17 Java/Android
Mysql排查分析慢sql之explain实战案例
2022/04/19 MySQL