vue-10-路由
1 原始方式
1), 路由, vue-router 2
简单安装方式, 但先讲原理
cnpm install --save vue-router
2), 引用
在main.js中
// 引入 router
import VueRouter from "vue-router"
Vue.use(VueRouter)
3), 注入:
import VueRouter from "vue-router"
import HelloWorld from './components/HelloWorld'
Vue.use(VueRouter)
var router = new VueRouter({
routes: [{
path: "/hello",
component: HelloWorld
}]
})
在 vue 中注入:
new Vue({
el: '#app',
components: {App},
template: '<App/>',
router
})
4), 视图加载位置
在app.vue中
<template>
<div id="app">
<img src="./assets/logo.png">
<HelloWorld/> <router-view></router-view> </div>
</template>
通过 http://localhost:8080/#/hello 的方式访问
2, 但这样使用太乱了, 所以将路由单独提出来:
新建 router 目录, 在下面新建 index.js 文件
import Vue from 'vue' // 引入 router
import VueRouter from "vue-router" import HelloWorld from '../components/HelloWorld'
import HellowIwen from '../components/HellowIwen' Vue.use(VueRouter) export default new VueRouter({
routes: [{
path: "/hello",
component: HelloWorld
}, {
path: "/iwen",
component: HellowIwen
}]
})
main.js抽取逻辑后变为 ;
// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App' // 引入 默认加载 index.js
import router from './router' Vue.config.productionTip = false /* eslint-disable no-new */
new Vue({
el: '#app',
components: {App},
template: '<App/>',
router
})
确定加载位置: , 在 app.vue 中
<template>
<div id="app">
<img src="./assets/logo.png">
<HelloWorld/> <router-view></router-view> </div>
</template>
3, 跳转
1), 新建 navelist .vue, 使用 router-link 标签进行跳转
<template>
<div>
<!--用来跳转的-->
<ul>
<li>
<!--使用基本的 to-->
<router-link to="/hello">hello world</router-link>
</li> <li>
<router-link to="/iwen">hello iwen</router-link>
</li>
</ul> <ul>
<li>
<!--v-bind:to 动态数据加载-->
<router-link :to="urlData.helloworld">hello world</router-link>
</li>
</ul> <ul>
<li>
<!-- 使用 path -->
<router-link :to="{path: urlData.helloworld}">hello world</router-link>
</li>
</ul> </div>
</template> <script>
export default {
name: "NavList",
data() {
return {
urlData: {
helloworld: "/hello",
helloIwen: "/iewn"
}
}
}
}
</script> <style scoped>
ul {
list-style: none;
text-align: center;
}
li {
color: red
}
</style>
当点击时, 通过 router-link 标签解携为 a 标签, 进行叶面间跳转
可以在进行 vue init webpack router-example 的时候, 直接创建router, 和上面的结构一致
vue-10-路由的更多相关文章
- vue(5)—— vue的路由插件—vue-router 常用属性方法
前端路由 看到这里可能有朋友有疑惑了,前端也有路由吗?这些难道不应该是在后端部分操作的吗?确实是这样,但是现在前后端分离后,加上现在的前端框架的实用性,为的就是均衡前后端的工作量,所以在前端也有了路由 ...
- 【Vue的路由,SPA概念】
前言 本章是为了以后实现前端页面的搭建而写的, 重点在于如何实现 单页Web应用 因为相对于以前的传统多页面web,有很大的缺陷. 那么就必须了解一下Vue的路由设置. SPA的概念 总的而言,我们知 ...
- Vue 嵌套路由使用总结
Vue 嵌套路由使用总结 by:授客 QQ:1033553122 开发环境 Win 10 node-v10.15.3-x64.msi 下载地址: https://nodejs.org/ ...
- [VUE]关于路由哪些事儿
什么是路由 之前有个小伙伴面试被问到:面试官:不用vue能不能写单页面应用?答:用angular啊(咳咳,开个玩笑),答案确实是可以的,原生js中有个事件叫做onhashchange,可以在windo ...
- 四、vue前端路由(轻松入门vue)
轻松入门vue系列 Vue前端路由 七.Vue前端路由 1. 路由的基本概念与原理 后端路由 前端路由 实现简单的前端路由 vue-router基本概念 2. vue-router的基本使用 基本使用 ...
- Vue 路由懒加载, VueRouter一步完成Vue的路由懒加载 一行代码搞定懒加载
Vue Router路由配置中的component里面配置即可 1 // 路由懒加载的方式加载组件 2 3 component: () => import('@/views/Detail'), ...
- vue父路由默认选中第一个子路由,切换子路由让父路由高亮不会消失
vue父路由默认选中第一个子路由,切换子路由让父路由高亮不会消失 正常默认会有 .router-active-class 识别高亮 达到以上注意: 1. exact 不要加 注意是不要加,exact ...
- vue的路由映射问题
遇到的问题 今天在项目中遇到了一个问题,明明在Router文件夹下的路由js映射文件中,配置好了,如下: // 生日贺卡 { path: 'birthdayRemind', component: lo ...
- 前端MVC Vue2学习总结(八)——Vue Router路由、Vuex状态管理、Element-UI
一.Vue Router路由 二.Vuex状态管理 三.Element-UI Element-UI是饿了么前端团队推出的一款基于Vue.js 2.0 的桌面端UI框架,手机端有对应框架是 Mint U ...
- Vue.js路由
有时候,我们在用vue的时候会有这样的需求,比如一个管理系统,点了左边的菜单栏,右边跳转到一个新的页面中,而且刷新的时候还会停留在原来打开的页面. 又或者,一个页面中几个不同的画面来回点击切换,这两种 ...
随机推荐
- C++题解:Matrix Power Series ——矩阵套矩阵的矩阵加速
Matrix Power Series r时间限制: 1 Sec 内存限制: 512 MB 题目描述 给定矩阵A,求矩阵S=A^1+A^2+--+A^k,输出矩阵,S矩阵中每个元都要模m. 数据范围: ...
- C语言内存四区的学习总结(三)---- 栈区
接上篇内存四区的堆区的总结,下面做一些栈区的相关总结. 一.栈区的分析: 就下面测试程序 #include "stdio.h" #include "string.h&qu ...
- Waiting for table metadata lock
出现下图这个现象之前是在一张事务操作频繁地表上,执行了truncate操作. mysql.sock@(none)> select user,host,db,command,time,state, ...
- MyBatis配置C3P0连接池
一.导包 c3p0包 mybatis包 数据库的连接包 二.继承UnpooledDataSourceFactory的类 Mybatis 没有帮开发者实现 c3p0 数据库连接池,故需要使用者自 ...
- kali入门
第一章:入门kalilinux By:鬼尘 第一章基本上就是涵盖以下的主题: ·kali的发展简史 ·kali的一般用途 ·kali的下载与安装 ·kali的配置与更新 在本章结尾部分,我们还会介绍k ...
- JObject,JArray的基本操作
引用:https://www.cnblogs.com/dacongge/p/6957074.html 1.JObject:基本的json对象 /// <summary> /// Gets ...
- QT汇总
1.QT介绍及其在Linux下的安装 2.windows下安装QT并与visual studio 2017搭建开发环境 参考资料: QT官网资料 QT实战一二三 Qt资料大全 <Qt 实战一二三 ...
- git 命令行
在使用 git 命令行之前需要下载安装软件官方网站:https://git-scm.com/window 或者 mac 等其它版本自行下载 使用方法一:安装后在项目文件夹中右键菜单会有个 Git Ba ...
- Android中屏幕保持唤醒
1.锁的类型 PowerManager中各种锁的类型对CPU .屏幕.键盘的影响: PARTIAL_WAKE_LOCK : 保持CPU 运转,屏幕和键盘灯有可能是关闭的. SCREEN_DIM_WAK ...
- 笔记:安卓App消息处理机制
内容简述 类似Binder机制,MessageQueue.Looper也有底层的C++实现,涉及文件管道和驱动等. 以下仅从Java层的Looper.Handler和MessageQueue等相关类型 ...