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数独游戏解析(一)-页面布局
Nov 05 Javascript
25个优雅的jQuery Tooltip插件推荐
May 25 Javascript
js捕获鼠标右键菜单中的粘帖事件实现代码
Apr 01 Javascript
jQuery中on()方法用法实例
Jan 19 Javascript
jQuery实现复选框批量选择与反选的方法
Jun 17 Javascript
js HTML5手机刮刮乐代码
Sep 29 Javascript
如何利用JQuery实现从底部回到顶部的功能
Dec 27 Javascript
微信小程序 上传头像的实例详解
Oct 27 Javascript
Webpack优化配置缩小文件搜索范围
Dec 25 Javascript
angular中两种表单的区别(响应式和模板驱动表单)
Dec 06 Javascript
VUE中使用HTTP库Axios方法详解
Feb 05 Javascript
Js实现复选框的全选、全不选反选功能代码实例
Feb 28 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 事件机制(2)
2011/03/23 PHP
redis 队列操作的例子(php)
2012/04/12 PHP
浅析memcache启动以及telnet命令详解
2013/06/28 PHP
php 类自动载入的方法
2015/06/03 PHP
prototype 的说明 js类
2006/09/07 Javascript
加载jQuery后$冲突的解决办法
2010/07/09 Javascript
基于jQuery的history历史记录插件
2010/12/11 Javascript
奉献给JavaScript初学者的编写开发的七个细节
2011/01/11 Javascript
JQuery select控件的相关操作实现代码
2012/09/14 Javascript
PHP abstract与interface之间的区别
2013/11/11 Javascript
JavaScript实现的日期控件具体代码
2013/11/18 Javascript
js中iframe调用父页面的方法
2014/10/30 Javascript
简单谈谈jQuery(function(){})与(function(){})(jQuery)
2014/12/19 Javascript
关于js里的this关键字的理解
2015/08/17 Javascript
分享javascript计算时间差的示例代码
2020/03/19 Javascript
详解原生JavaScript实现jQuery中AJAX处理的方法
2016/05/10 Javascript
jQuery实现的购物车物品数量加减功能代码
2016/11/16 Javascript
vue基于Element构建自定义树的示例代码
2017/09/19 Javascript
使用puppeteer破解极验的滑动验证码
2018/02/24 Javascript
vue路由分文件拆分管理详解
2020/08/13 Javascript
[00:35]DOTA2上海特级锦标赛 EG战队宣传片
2016/03/04 DOTA
[00:18]天涯墨客三技能展示
2018/08/25 DOTA
Python中实现对list做减法操作介绍
2015/01/09 Python
Python中利用函数装饰器实现备忘功能
2015/03/30 Python
在Django中使用Sitemap的方法讲解
2015/07/22 Python
python多线程方式执行多个bat代码
2016/06/07 Python
Flask解决跨域的问题示例代码
2018/02/12 Python
Python图像处理之简单画板实现方法示例
2018/08/30 Python
python机器学习之神经网络实现
2018/10/13 Python
python批量修改图片后缀的方法(png到jpg)
2018/10/25 Python
Python 读取有公式cell的结果内容实例方法
2020/02/17 Python
Html5无刷新修改browser Url的方法
2014/01/15 HTML / CSS
澳大利亚手表品牌:Time IV Change
2018/10/06 全球购物
公司承诺书范文
2014/05/19 职场文书
社区禁毒工作方案
2014/06/02 职场文书
python神经网络Xception模型
2022/05/06 Python