Vue-router的使用和出现空白页,路由对象属性详解


Posted in Javascript onSeptember 03, 2018

Vue-router的使用和出现空白页

2018.08.28 更新

vue-router:前端路由系统——改变视图的同时不会向后端发出请求

1、 hash

2、history

2018.06.25 更新

get到一个新技能

import Vue from 'vue'
import Router from 'vue-router'
import api from '../lib/service' //接口文档

Vue.use(Router)
const router = {
 mode: 'history',
 routes: [{
 chunkName: 'src/pages/index',
 name: 'index',
 path: '/',
 beforeEnter: async (to, from, next) => {
  await api.login().then((res) => {
  console.log(res)
  next()
  }).catch((rej) => {
  console.log('error')
  console.log(rej)
  next()
  })
 },
 component: () => import('../../src/pages/index.vue')
 }]
}

export default new Router(router)

beforeEnter:在加载路由时可以做一些事情,上面的代码执行的是,在加载之前调用登陆接口

2018 5.5 更新

空白页还有一种情况,页面中数据使用的错误,会导致空白页

可以带参数传路由,有兴趣的小伙伴可以试试

这个方法是我经常用的

this.$route.push({

 path: '路径',
 query: {
   key: 'value'
 }

})

跳转至另一个页面时,这样获取传的参数

this.$route.query.key

两种设计模式

history/hash

还有一些别的我记录的方法

$route.path

$route.params

$route.query

$route.hash

$route.matched //路由记录

$route.name

$route.fullPath //包含查询参数和hash完整路径

route.go(num)

router-link :to=”path”

//原来写的

自己之前跟着vue教学视频跟着老师一起打代码,现在为了配合课程设计准备自己写个vue项目,刚开始就在vue-router上遇到了小坎坷,就想分享一下

放上代码

main.js

import VueResource from 'vue-resource'
import Index from './pages/index'
import Content from './pages/content'
import router from './router'
import Router from 'vue-router'

Vue.config.productionTip = false

Vue.use(Router)

Vue.use(VueResource)

let routers = new Router({
 mode: 'history',
 routes: [
 {
  path: '/',
  component: Content,
  children: [
  {
   path: '/content',
   component: Content
  }
  ]
 }
 ]
})
/* eslint-disable no-new */
new Vue({
 el: '#app',
 routers,
 template: '<Index/>',
 components: { Index }
})

index.vue

<template>
 <div id="app" class="wrapper">
  <div class="nav">
   <ul>
    <li>首页</li>
    <li>技术文档</li>
    <li>留言</li>
    <li>关于我</li>
   </ul>
  </div>
  <div class="content">
    <router-view></router-view>
  </div>
  <div class="footer">
   @dwf
  </div>
 </div>


</template>

<script>
</script>

<style>
</style>

content.vue

<template>
 <div>
  1111
 </div>
</template>

<script>
</script>

<style>
</style>

这样写下来,没报错,可是运行以后就是空白页

之前是因为生成项目时,我就直接用了router,为了不冲突自己生成的router,我自己改了名称routers, 后来考虑到是不是import router from './router'这个不起作用,就删掉了,自己cnpm vue-router。但是还是没有用。

后来把routers改了, 把这个routers改成router,页面就出现了。

let routers = new Router({

当然下面的routers也改了。

vue-router的使用流程:

cnpm install vue-router ?save;
import Router from vue-router;
Vue.use(Router);
let router = new Router({ 
routes: [//路由路径] 
});
new Vue({ router })

使用

完毕

然后有几点注意事项,以下几点都是我碰到出现了空白页的情况,po出来可能会有点帮助:

routes:不是routers

let router = new Router({}) 不要乱起名字 //虽然我现在还不知道为什么,有大神可以赐教一下嘛

不要忘记挂载在new Vue({})里面

子路由的路径前面不要加‘/'

let router = new VueRouter({ 
mode: 'history', 
routes: [ 
{ 
path: '/', 
component: IndexPage 
}, 
{ 
path: '/orderList', 
component: OrderListPage 
}, 
{ 
path: '/detail', 
component: DetailPage, 
redirect: '/detail/count', 
children: [ 
{ 
path: 'analysis', 
component: DetailAnaPage 
} 
] 
} 
] 
})

以上这篇Vue-router的使用和出现空白页,路由对象属性详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
最短的IE判断代码
Mar 13 Javascript
js数组的操作详解
Mar 27 Javascript
node.js下LDAP查询实例分享
Sep 30 Javascript
第十章之巨幕页头缩略图与警告框组件
Apr 25 Javascript
全面了解函数声明与函数表达式、变量提升
Aug 09 Javascript
微信小程序注册60s倒计时功能 使用JS实现注册60s倒计时功能
Aug 16 Javascript
VueJs 将接口用webpack代理到本地的方法
Nov 27 Javascript
Vue中this.$router.push参数获取方法
Feb 27 Javascript
vue2.0+koa2+mongodb实现注册登录
Apr 10 Javascript
详解swiper在vue中的应用(以3.0为例)
Sep 20 Javascript
vue+element-ui+axios实现图片上传
Aug 20 Javascript
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
Feb 01 jQuery
Vue 通过自定义指令回顾v-内置指令(小结)
Sep 03 #Javascript
JavaScript日期工具类DateUtils定义与用法示例
Sep 03 #Javascript
Angular5中状态管理的实现
Sep 03 #Javascript
JavaScript创建对象方法实例小结
Sep 03 #Javascript
vue自定义底部导航栏Tabbar的实现代码
Sep 03 #Javascript
解决vue单页路由跳转后scrollTop的问题
Sep 03 #Javascript
webpack4 SCSS提取和懒加载的示例
Sep 03 #Javascript
You might like
php的XML文件解释类应用实例
2014/09/22 PHP
PHP中ltrim与rtrim去除左右空格及特殊字符实例
2016/01/07 PHP
浅谈php中curl、fsockopen的应用
2016/12/10 PHP
PHP crc32()函数讲解
2019/02/14 PHP
jquery 选择器部分整理
2009/10/28 Javascript
window.onbeforeunload方法在IE下无法正常工作的解决办法
2010/01/23 Javascript
兼容ie、firefox的图片自动缩放的css跟js代码分享
2013/08/12 Javascript
学JavaScript七大注意事项【必看】
2016/05/04 Javascript
js完整倒计时代码分享
2016/09/18 Javascript
[原创]javascript typeof id==='string'?document.getElementById(id):id解释
2016/11/02 Javascript
简单理解js的prototype属性及使用
2016/12/07 Javascript
Vue基于NUXT的SSR详解
2017/10/24 Javascript
vue-cli项目中使用Mockjs详解
2018/05/14 Javascript
利用chrome浏览器进行js调试并找出元素绑定的点击事件详解
2021/01/30 Javascript
nodejs中方法和模块用法示例
2018/12/24 NodeJs
JavaScript数组特性与实践应用深入详解
2018/12/30 Javascript
微信小程序出现wx.getLocation再次授权问题的解决方法分析
2019/01/16 Javascript
vue组件之间通信方式实例总结【8种方式】
2019/02/22 Javascript
Vue内部渲染视图的方法
2019/09/02 Javascript
python开发环境PyScripter中文乱码问题解决方案
2016/09/11 Python
pycharm访问mysql数据库的方法步骤
2019/06/18 Python
基于Keras的格式化输出Loss实现方式
2020/06/17 Python
python有几个版本
2020/06/17 Python
美国一家主打母婴用品的团购网站:zulily
2017/09/19 全球购物
健身场所或家用健身设备:Life Fitness
2017/11/01 全球购物
荣耀俄罗斯官网:HONOR俄罗斯
2020/10/31 全球购物
高考备战决心书
2014/03/11 职场文书
医院领导班子四风对照检查材料
2014/09/27 职场文书
乡镇民主生活会发言材料
2014/10/20 职场文书
护理见习报告范文
2014/11/03 职场文书
初三毕业评语
2014/12/26 职场文书
药店收银员岗位职责
2015/04/07 职场文书
2015秋季开学典礼演讲稿
2015/07/16 职场文书
使用pandas模块实现数据的标准化操作
2021/05/14 Python
使用CSS实现一个搜索引擎的原理解析
2021/09/25 HTML / CSS
基于PyQt5制作一个群发邮件工具
2022/04/08 Python