Vue.js路由组件vue-router使用方法详解


Posted in Javascript onDecember 02, 2016

使用Vue.js + vue-router 创建单页应用是非常简单的。只需要配置组件和路由映射,然后告诉 vue-router 在哪里渲染即可。

一、普通方式基本例子:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>vue-router使用方法</title>
</head>
<body>
 <div id="app">
 <h1>Hello App!</h1>
 <p>
 <!-- 使用 router-link 组件来导航. -->
 <!-- 通过传入 `to` 属性指定链接. -->
 <!-- <router-link> 默认会被渲染成一个 `<a>` 标签 -->
 <router-link to="/foo">Go to Foo</router-link>
 <router-link to="/bar">Go to Bar</router-link>
 </p>
 <!-- 路由出口 -->
 <!-- 路由匹配到的组件将渲染在这里 -->
 <router-view></router-view>
 </div>
 <script src="https://unpkg.com/vue/dist/vue.js"></script>
 <script src="https://unpkg.com/vue-router"></script>
 <script>

 // 1. 定义(路由)组件。
 // 可以从其他文件 import 进来
 const Foo = { template: '<div>foo</div>' }
 const Bar = { template: '<div>bar</div>' }

 // 2. 定义路由
 // 每个路由应该映射一个组件。 其中"component" 可以是
 // 通过 Vue.extend() 创建的组件构造器,
 // 或者,只是一个组件配置对象。
 const routes = [
 { path: '/foo', component: Foo },
 { path: '/bar', component: Bar }
 ]

 // 3. 创建 router 实例,然后传 `routes` 配置
 const router = new VueRouter({
 routes // (缩写)相当于 routes: routes
 })

 // 4. 创建和挂载根实例。
 // 记得要通过 router 配置参数注入路由,
 // 从而让整个应用都有路由功能
 const app = new Vue({
 router
 }).$mount('#app')

 // 现在,应用已经启动了!
 </script>
</body>
</html>

二、块化机制编程基本例子,以在vue-cli中的使用方法为例

安装vue-router插件

# npm install vue-router --save-dev

在src文件夹下面的components文件夹下新建Foo.vue、Bar.vue两个组件,在Foo组件写入以下内容

<template>
 <div>foo</div>
</template>

在Bar.vue组件中写入以下内容

<template>
 <div>bar</div>
</template>

打开src文件夹下面的app.vue文件,修改代码为

<template>
 <div id="app">
 <router-view
 class="view"
 keep-alive
 transition
 transition-mode="out-in">
 </router-view>
 </div>
</template>

这里用 router-view 来把刚才新建的两个页面加载到这里来,修改src文件夹下面的main.js文件

import Vue from 'vue'
import App from './App'
//引用路由插件
import VueRouter from 'vue-router'

//使用路由插件
Vue.use(VueRouter)

//引入组件 
import Foo from './components/Foo'
import Bar from './components/Bar'

const routes = [
 { path: '/foo/' , component: Foo },
 { path: '/bar/' , component: Bar },
]

//使用路由规则
const router = new VueRouter({
 routes
})
//加载路由规则
new Vue({
 router,
 el: '#app',
 render:h => h(App)
})

然后运行npm run dev查看效果吧。

本文已被整理到了《Vue.js前端组件学习教程》,欢迎大家学习阅读。

关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。

更多vue学习教程请阅读专题《vue实战教程》

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
运用Windows XP附带的Msicuu.exe、Msizap.exe来彻底卸载顽固程序
Apr 21 Javascript
jQuery实现带延迟效果的滑动菜单代码
Sep 02 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
Jun 23 Javascript
二维码图片生成器QRCode.js简单介绍
Aug 18 Javascript
Angularjs实现控制器之间通信方式实例总结
Mar 27 Javascript
浅谈微信小程序flex布局基础
Sep 10 Javascript
vue中使用微信公众号js-sdk踩坑记录
Mar 29 Javascript
新手简单了解vue
May 29 Javascript
17道题让你彻底理解JS中的类型转换
Aug 08 Javascript
使用JavaScript计算前一天和后一天的思路详解
Dec 20 Javascript
jQuery实现简单全选框
Sep 13 jQuery
JavaScript实现切换多张图片
Jan 27 Javascript
搭建Bootstrap离线文档的方法
Dec 02 #Javascript
巧用Javascript的逻辑运算符
Dec 02 #Javascript
Vue.js第四天学习笔记(组件)
Dec 02 #Javascript
Javascript之面向对象--接口
Dec 02 #Javascript
Javascript之面向对象--封装
Dec 02 #Javascript
JavaScript制作弹出层效果
Dec 02 #Javascript
Javascript之面向对象--方法
Dec 02 #Javascript
You might like
深入php socket的讲解与实例分析
2013/06/13 PHP
php与flash as3 socket通信传送文件实现代码
2014/08/16 PHP
php解析http获取的json字符串变量总是空白null
2015/03/02 PHP
php实现在新浪云中使用imagick生成缩略图并上传的方法
2016/09/26 PHP
mouse_on_title.js
2006/08/25 Javascript
JS 打印功能代码可实现打印预览、打印设置等
2014/10/31 Javascript
什么是 AngularJS?AngularJS简介
2014/12/06 Javascript
jQuery对象与DOM对象之间的相互转换
2015/03/03 Javascript
javascript获取系统当前时间的方法
2015/11/19 Javascript
JavaScript函数中关于valueOf和toString的理解
2016/06/14 Javascript
简单学习vue指令directive
2016/11/03 Javascript
浅析JavaScriptSerializer类的序列化与反序列化
2016/11/22 Javascript
JavaScript中for循环的几种写法与效率总结
2017/02/03 Javascript
Angular指令之restict匹配模式的详解
2017/07/27 Javascript
webpack3+React 的配置全解
2017/08/21 Javascript
python函数返回多个值的示例方法
2013/12/04 Python
零基础写python爬虫之神器正则表达式
2014/11/06 Python
使用IPython来操作Docker容器的入门指引
2015/04/08 Python
Python中title()方法的使用简介
2015/05/20 Python
Python3搜索及替换文件中文本的方法
2015/05/22 Python
python实现自动重启本程序的方法
2015/07/09 Python
Python 爬虫学习笔记之单线程爬虫
2016/09/21 Python
Python爬虫_城市公交、地铁站点和线路数据采集实例
2018/01/10 Python
用vue.js组件模拟v-model指令实例方法
2019/07/05 Python
python子线程退出及线程退出控制的代码
2019/10/16 Python
Jmeter HTTPS接口测试证书导入过程图解
2020/07/22 Python
python利用xlsxwriter模块 操作 Excel
2020/10/14 Python
Python 可视化神器Plotly详解
2020/12/26 Python
css3实现椭圆轨迹旋转的示例代码
2018/10/29 HTML / CSS
socket.io 和canvas 实现的共享画板功能
2019/05/22 HTML / CSS
Janie and Jack美国官网:GAP旗下的高档童装品牌
2019/09/09 全球购物
委托公证书格式
2015/01/26 职场文书
学校运动会简讯
2015/07/20 职场文书
Python文件的操作示例的详细讲解
2021/04/08 Python
压缩Redis里的字符串大对象操作
2021/06/23 Redis
Nginx缓存设置案例详解
2021/09/15 Servers