vue-cli学习笔记 02、Vue-router(路由)(一)

简介: vue-cli学习笔记 02、Vue-router(路由)(一)

一、起步


1.1、ES5实现局部页面路由跳转


目的:单页面中实现局部路由跳转


<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <!-- 引入vue以及vue-router的js文件 -->
  <script src="https://unpkg.com/vue/dist/vue.js"></script>
  <script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
</head>
<body>
  <!-- 定义挂载点 -->
  <div id="app">
    <h1>Hello App!</h1>
    <p>
      <!-- router-link标签:表示跳转的路径对应着 -->
      <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>
    //1、定义route(路由组件),可被导出到其他文件
    const Foo = { template: '<div>foo</div>' }
    const Bar = { template: '<div>bar</div>' }
    //2、定义一些路由(数组存储对象形式),每一个路由需要对应者一个组件,这些组件可通过示例对象创建如:Vue.extend()或对象组成组件(如上面的{template:xxx}对应)
    //之后再来介绍嵌套路由
    const routes = [
      { path: '/foo', component: Foo },
      { path: '/bar', component: Bar }
    ]
    //3、可通过new VueRouter来创建实例,可以传入多个选项,这里就传入路由数组即可
    const router = new VueRouter({
      routes // short for `routes: routes`
    })
    //4、创建并挂载vue实例,确保要将路由实例进行注入能够得到感知
    const app = new Vue({
      router
    }).$mount('#app')
  </script>
</body>
</html>



二、通过vue-cli使用vue-router组件


2.1、哈希路由


构建项目


step1:创建vue-cli,输入vue create xxx


step2:选择手动勾选项目,添加router组件。





哈希路由分析


哈希路由:根据url的不同展示内容不同。


/#/xxx,其中xxx不同当前页面会根据指定的router标签来进行页面的局部刷新。
异步路由理解:只有当访问指定异步路由组件的时候才进行资源的引入加载操作!一般的话都会直接先去加载!
示例: component: () => import(/* webpackChunkName: "about" */ '../views/About.vue')
router/index.js:路由配置js文件
import { createRouter, createWebHashHistory } from 'vue-router'
import Home from '../views/Home.vue'
import Login from '../views/Login.vue'
// 定义路由规则,url对应组件
const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home
  },
  {
    path: '/about',
    name: 'About',
    // 异步路由
    component: () => import(/* webpackChunkName: "about" */ '../views/About.vue')
  },
  {
    path: '/login',
    name: 'Login',
    component: Login
  },
]
// 创建路由
const router = createRouter({
  history: createWebHashHistory(),
  routes
})
export default router



main.js:使用路由



核心文件:App.vue


<template>
  <div id="nav">
    <!-- 路径跳转,to指定路由规则中的path,当点击时对应的component组件在router-view标签中显示 -->
    <router-link to="/">Home</router-link> |
    <router-link to="/about">About</router-link> |
    <router-link to="/login">Login</router-link>
  </div>
  <router-view />
</template>
<style>
</style>




相关文章
|
2月前
|
JavaScript 数据可视化
vue-cli学习一:vue脚手架的 vue-cli2和vue-cli3版本 创建vue项目,vue的初始化详解
这篇文章介绍了如何使用vue-cli 2和3版本来创建Vue项目,并详细说明了两者之间的主要区别。
116 5
vue-cli学习一:vue脚手架的 vue-cli2和vue-cli3版本 创建vue项目,vue的初始化详解
|
2月前
|
JavaScript 数据可视化
vue-cli学习二:vue-cli3版本 创建vue项目后,Runtime-Compiler和Runtime-only两个模式详解;vue项目管理器;配置文件的配置在哪,以及如何配置
这篇文章详细介绍了Vue CLI 3版本创建项目时的Runtime-Compiler和Runtime-only两种模式的区别、Vue程序的运行过程、render函数的使用、eslint的关闭方法,以及Vue CLI 2和3版本配置文件的不同和脚手架3版本创建项目的配置文件配置方法。
110 3
vue-cli学习二:vue-cli3版本 创建vue项目后,Runtime-Compiler和Runtime-only两个模式详解;vue项目管理器;配置文件的配置在哪,以及如何配置
|
2月前
|
资源调度 JavaScript 前端开发
vue3第一章基础:创建Vue3.0工程,包括使用vue-cli 创建、使用 vite 创建
vue3第一章基础:创建Vue3.0工程,包括使用vue-cli 创建、使用 vite 创建
27 5
|
2月前
|
资源调度 JavaScript 前端开发
路由管理:Vue Router的使用和配置技巧
【10月更文挑战第21天】路由管理:Vue Router的使用和配置技巧
46 3
|
2月前
|
JavaScript API
vue 批量自动引入并注册组件或路由等等
【10月更文挑战第12天】 vue 批量自动引入并注册组件或路由等等
|
2月前
|
JavaScript 前端开发 API
vue3中常用插件的使用方法:按需引入自定义组件,自动导入依赖包,自动生成路由,自动生成模拟数据
vue3中常用插件的使用方法:按需引入自定义组件,自动导入依赖包,自动生成路由,自动生成模拟数据
860 0
|
2月前
|
JavaScript 前端开发 UED
vue中vue-router路由懒加载(按需加载)的作用以及常见的实现方法
vue中vue-router路由懒加载(按需加载)的作用以及常见的实现方法
209 1
|
2月前
|
JavaScript 前端开发 UED
|
2月前
|
JavaScript 前端开发 API
前端技术分享:Vue.js 动态路由与守卫
【10月更文挑战第1天】前端技术分享:Vue.js 动态路由与守卫
|
1月前
|
JavaScript UED
"Vue实战技巧大揭秘:一招解决路由跳转页面不回顶部难题,让你的单页面应用用户体验飙升!"
【10月更文挑战第23天】在Vue单页面应用中,点击路由跳转时,默认情况下页面不会自动滚动到顶部,这可能影响用户体验。本文通过一个新闻网站的案例,介绍了如何使用Vue-router的全局前置守卫和`scrollBehavior`方法,实现路由跳转时页面自动滚动到顶部的功能,提升用户浏览体验。
78 0
下一篇
DataWorks