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 相关文章推荐
获取Javscript执行函数名称的方法
Dec 22 Javascript
屏蔽Flash右键信息的js代码
Jan 17 Javascript
全面理解JavaScript中的继承(必看)
Jun 16 Javascript
js 判断一组日期是否是连续的简单实例
Jul 11 Javascript
JS字符串false转boolean的方法(推荐)
Mar 08 Javascript
微信小程序 支付功能实现PHP实例详解
May 12 Javascript
JavaScript中递归实现的方法及其区别
Sep 12 Javascript
javascript 开发之网页兼容各种浏览器
Sep 28 Javascript
基于JavaScript实现报警器提示音效果
Oct 27 Javascript
jQuery实现滚动效果
Nov 17 jQuery
微信小程序显示倒计时功能示例【测试可用】
Dec 03 Javascript
Vue使用axios引起的后台session不同操作
Aug 14 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
77A一级收信机修理记
2021/03/02 无线电
php设计模式 State (状态模式)
2011/06/26 PHP
用PHP实现浏览器点击下载TXT文档的方法详解
2013/06/02 PHP
PHP_SELF,SCRIPT_NAME,REQUEST_URI区别
2014/12/24 PHP
PHP的cURL库简介及使用示例
2015/02/06 PHP
php禁止某ip或ip地址段访问的方法
2015/02/25 PHP
jQuery 通过事件委派一次绑定多种事件,以减少事件冗余
2010/06/30 Javascript
Script标签与访问HTML页面详解
2014/01/10 Javascript
javascript事件委托的方式绑定详解
2015/06/10 Javascript
Javascript中的数据类型之旅
2015/10/18 Javascript
利用jQuery的动画函数animate实现豌豆发射效果
2016/08/28 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
2016/11/07 Javascript
基于Vue.js实现简单搜索框
2020/03/26 Javascript
Vue的百度地图插件尝试使用
2017/09/06 Javascript
通俗易懂地解释JS中的闭包
2017/10/23 Javascript
浅谈基于Vue.js的移动组件库cube-ui
2017/12/20 Javascript
Node.js操作系统OS模块用法分析
2019/01/04 Javascript
javascript 使用sleep函数的常见方法详解
2020/04/26 Javascript
JavaScript 正则应用详解【模式、欲查、反向引用等】
2020/05/13 Javascript
Python 随机生成中文验证码的实例代码
2013/03/20 Python
用map函数来完成Python并行任务的简单示例
2015/04/02 Python
pandas把dataframe转成Series,改变列中值的类型方法
2018/04/10 Python
阿里云ECS服务器部署django的方法
2019/08/29 Python
使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)
2020/01/18 Python
python 等差数列末项计算方式
2020/05/03 Python
使用HTML5原生对话框元素并轻松创建模态框组件
2019/03/06 HTML / CSS
Otiumberg官网:英国半精致珠宝品牌
2021/01/16 全球购物
How TDD works
2012/09/30 面试题
高校自主招生自荐信
2013/12/09 职场文书
快餐店的创业计划书范文
2014/01/29 职场文书
教师求职自荐信
2014/03/09 职场文书
学生会干部自我鉴定2014
2014/09/18 职场文书
网络营销计划
2015/01/17 职场文书
西湖英语导游词
2015/02/06 职场文书
代理词怎么写
2015/05/25 职场文书
在Docker容器中部署SQL Server
2022/04/11 Servers