vuejs之路由应用之二
现在我们开始一个应用:
一个应用中包含4个组件,我们暂且可以想象是4个页面,首先是App.vue,App.vue中又包含3个子组件:About.vue,Home.vue,Document.vue
App.vue中包含三个链接 about,home,document,点击about进入About,点击home进入Home,点击home进入Document,如图所示:

App.vue中的代码:
<template>
<div id="app">
<div class="nav">
<router-link to="/about">about</router-link>
<router-link to="/home">home</router-link>
<router-link to="/document">document</router-link>
</div>
<router-view class="fontBig"/> </div> </template>
<router-view>:就是路由对应组件显示的地方
About.vue的代码:
<template>
<div>about</div>
</template>
Home.vue的代码:
<template>
<div>home</div>
</template>
Document.vue的代码:
<template>
<div>document</div>
</template>
组件代码都准备好后,然后在router/index里面配置路由:
import Vue from 'vue'
import Router from 'vue-router'
import Home from '@/components/Home'
import About from '@/components/About'
import Document from '@/components/Document'
Vue.use(Router)
export default new Router({
mode: 'history',
routes: [
{
path: '/home',
name: 'home',
component: Home
},
{
path: '/about',
name: 'about',
component: About
},
{
path: '/document',
name: 'document',
component: Document
}
]
})
routes中的参数配置:path指的是url地址,component:指的是url地址对应的组件,name:可省。里面配置了三个路由信息。
在 App.vue中有三个超级链接: <router-link to="/about">about</router-link> <router-link to="/home">home</router-link> <router-link to="/document">document</router-link>
点击链接,URL地址改变,同时与URL对应的组件也就随之改变。
有人会问为什么不是a链接,而是router-link,router-link是vue内置组件,在a链接的基础上,进行了封装。阻止默认行为,在hash模式下自动添加#,等等。因为用a链接页面会跳转刷新。
另外要提的是路由的模式配置mode,mode有两种模式,模式一是:hash模式,是默认的模式,模式一可以支持低版本的浏览器。但是在浏览器的地址栏url地址会有#,
例如:http://localhost:8080/#/或 http://localhost:8080/#/document ,很不雅观。但可支持低版本浏览器。而模式二,history模式,地址正常 http://localhost:8080/document适用于高版本的浏览器,因为浏览器需要支持pushState方法。今天vue-router就讲到这里,注意几点:1 router-link取代超链接a, 2 router/index 的路由配置mode参数的配置
vuejs之路由应用之二的更多相关文章
- vuejs实现瀑布流布局(二)
瀑布流布局已然完成,那么剩下的就是另一个比较大的工程了——无限加载. 之前说了,这个活动项目是基于SUI-Mobile搭建的,所以可以直接使用sui内建组件“无限加载”来实现这个功能. 没有真实的数据 ...
- Web APi入门之Self-Host寄宿及路由原理(二)
前言 刚开始表面上感觉Web API内容似乎没什么,也就是返回JSON数据,事实上远非我所想,不去研究不知道,其中的水还是比较深,那又如何,一步一个脚印来学习都将迎刃而解. Self-Host 我们知 ...
- ASP.NET Web API路由规则(二)
默认的规则 在ASP.NET MVC4中 global.asax.cs代码中并无注册默认路由规则的代码 代码如下: public class WebApiApplication : System.We ...
- ASP.NET MVC 路由进阶(之二)--自定义路由约束
3.自定义路由约束 什么叫自定义路由约束呢?假如路由格式为archive/{year}/{month}/{day},其中year,month,day是有约束条件的,必须是数字,而且有一定范围. 这时候 ...
- WPF自定义路由事件(二)
WPF中的路由事件 as U know,和以前Windows消息事件区别不再多讲,这篇博文中,将首先回顾下WPF内置的路由事件的用法,然后在此基础上自定义一个路由事件. 1.WPF内置路由事件 WPF ...
- react router @4 和 vue路由 详解(二)react-router @4用法
完整版:https://www.cnblogs.com/yangyangxxb/p/10066650.html 2.react-router @4用法 a.大概目录 不需要像vue那样麻烦的 ...
- ASP.NET Web API路由规则(二) 【转】
http://www.cnblogs.com/liulun/archive/2012/06/20/2556556.html 默认的规则 在ASP.NET MVC4中 global.asax.cs代码中 ...
- vuejs之路由应用之一
什么是‘路由’,路由相当于一个映射,一个url地址对应一个组件,当url地址A变为url地址B,那么对应地址A的组件就会改变为对应地址B的组件.应用于spa,即:单页应用,url地址改变,它不会跳转页 ...
- cisco路由的ip静态路由添加(二)
路由器Corp 配置Corp(config)#ip route 192.168.20.0 255.255.255.0 10.1.3.2 150 Corp(config)#ip route 192.16 ...
随机推荐
- 程序员修神之路--redis做分布式锁可能不那么简单
菜菜哥,复联四上映了,要不要一起去看看? 又想骗我电影票,对不对? 呵呵,想去看了叫我呀 看来你工作不饱和呀 哪有,这两天我刚基于redis写了一个分布式锁,很简单 不管你基于什么做分布式锁,你觉得很 ...
- Excel的创建和读取NPOI
项目中经常用到需要操作Excel文件,例如:导出数据库中的数据,读取数据等.但是电脑又没有安装office,不能直接调用微软的库,最后经过查找,找到这样的一个不用安装office的库.一个.NET库, ...
- 松软科技带你学开发:SQL--FIRST() 函数
FIRST() 函数(原文链接 松软科技:www.sysoft.net.cn/Article.aspx?ID=3731) FIRST() 函数返回指定的字段中第一个记录的值. 提示:可使用 ORDER ...
- flex下省略号的问题解决
最近在搞微信小程序,发现flex下使用省略号是没有效果的,而且还会打乱预期的结构,查询statckoverflow知道需要在父级设置min-width:0; 但是在我的尝试下,依然不行,原来在上层父级 ...
- automaticallyAdjustsScrollViewInsets
参考链接: https://www.jianshu.com/p/a1987a7c11ba
- 微信小程序获取input输入框内容
1.wxml <input class="weui-input" type='number' bindinput="emailInput"/> ...
- mysql 查询指定数据库中的表明和字段名
SELECT TABLE_NAME,COLUMN_NAME,COLUMN_COMMENT FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_COMMENT LI ...
- 使用docker安装eolinker
1.下载docker-enlinker git clone https://github.com/psvmc/eolinker-docker.git 2.进入目录 cd eolinker-docker ...
- 网络编程~~~ socket(套字节)
一 socket (套接字) socket处于应用层与传输层之间,提供了一些简单的接口,避免与操作系统之间的对接,省去了相当繁琐复杂的操作. socket在python中属于一个模块,通过调用模块中已 ...
- tomcat修改进程名称
1.window平台: 打开tomcat_home\bin\setclasspath.bat文件,找到set _RUNJAVA=”%JRE_HOME%\bin\java”这一行. 将该行注释掉 ,然后 ...