Home > Web Front-end > JS Tutorial > body text

Detailed explanation of how to use Vue.js routing component vue-router

高洛峰
Release: 2017-02-06 11:15:06
Original
1519 people have browsed it

It is very simple to create a single-page application using Vue.js + vue-router. Just configure the component and route mapping, and then tell vue-router where to render.

1. Basic examples of common methods:

<!DOCTYPE html>
<html>
<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: &#39;<div>foo</div>&#39; }
 const Bar = { template: &#39;<div>bar</div>&#39; }
 
 // 2. 定义路由
 // 每个路由应该映射一个组件。 其中"component" 可以是
 // 通过 Vue.extend() 创建的组件构造器,
 // 或者,只是一个组件配置对象。
 const routes = [
 { path: &#39;/foo&#39;, component: Foo },
 { path: &#39;/bar&#39;, component: Bar }
 ]
 
 // 3. 创建 router 实例,然后传 `routes` 配置
 const router = new VueRouter({
 routes // (缩写)相当于 routes: routes
 })
 
 // 4. 创建和挂载根实例。
 // 记得要通过 router 配置参数注入路由,
 // 从而让整个应用都有路由功能
 const app = new Vue({
 router
 }).$mount(&#39;#app&#39;)
 
 // 现在,应用已经启动了!
 </script>
</body>
</html>
Copy after login

2. Basic examples of block mechanism programming, taking the use method in vue-cli as an example

Install vue-router plug-in

# npm install vue-router --save-dev

Create a new file in the components folder under the src folder Foo.vue and Bar.vue two components, write the following content in the Foo component

<template>
 <div>foo</div>
</template>
Copy after login

Write the following content in the Bar.vue component

<template>
 <div>bar</div>
</template>
Copy after login

Open src For the app.vue file under the folder, modify the code to

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

Here, use router-view to load the two newly created pages here, and modify the main under the src folder. .js file

import Vue from &#39;vue&#39;
import App from &#39;./App&#39;
//引用路由插件
import VueRouter from &#39;vue-router&#39;
 
//使用路由插件
Vue.use(VueRouter)
 
//引入组件
import Foo from &#39;./components/Foo&#39;
import Bar from &#39;./components/Bar&#39;
 
const routes = [
 { path: &#39;/foo/&#39; , component: Foo },
 { path: &#39;/bar/&#39; , component: Bar },
]
 
//使用路由规则
const router = new VueRouter({
 routes
})
//加载路由规则
new Vue({
 router,
 el: &#39;#app&#39;,
 render:h => h(App)
})
Copy after login

Then run npm run dev to see the effect.

The above is the entire content of this article. I hope it will be helpful to everyone's learning, and I also hope that everyone can use PHP Chinese.

For more detailed explanations on how to use the Vue.js routing component vue-router, please pay attention to the PHP Chinese website for related articles!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template