只写路由部分的相关内容

需引入路由包

import Vue from 'vue'
// 1. 导入 vue-router 包
import VueRouter from 'vue-router'
// 2. 手动安装 VueRouter
Vue.use(VueRouter) // 导入 app 组件
import app from './App.vue'
// 导入 Account 组件
import account from './main/Account.vue'
import goodslist from './main/GoodsList.vue' // 3. 创建路由对象
var router = new VueRouter({
routes: [
// account goodslist
{ path: '/account', component: account },
{ path: '/goodslist', component: goodslist }
]
}) var vm = new Vue({
el: '#app',
render: c => c(app), // render 会把 el 指定的容器中,所有的内容都清空覆盖,所以 不要 把 路由的 router-view 和 router-link 直接写到 el 所控制的元素中
router // 4. 将路由对象挂载到 vm 上
}) // 注意: App 这个组件,是通过 VM 实例的 render 函数,渲染出来的, render 函数如果要渲染 组件, 渲染出来的组件,只能放到 el: '#app' 所指定的 元素中;
// Account 和 GoodsList 组件, 是通过 路由匹配监听到的,所以, 这两个组件,只能展示到 属于 路由的 <router-view></router-view> 中去;

app.vue

<template>
<div>
<h1>这是 App 组件</h1> <router-link to="/account">Account</router-link>
<router-link to="/goodslist">Goodslist</router-link> <router-view></router-view>
</div>
</template> <script>
</script> <style> </style>

以下两个在一个main文件夹里

1.veu

<template>
<div>
<h1>这是 Account 组件</h1>
</div>
</template> <script>
</script> <style> </style>

2.vue

<template>
<div>
<h1>这是 GoodsList 组件</h1>
</div>
</template> <script>
</script> <style> </style>

路由嵌套

加了个children而已

对路由进行分离

main.js

import Vue from 'vue'
// 1. 导入 vue-router 包
import VueRouter from 'vue-router'
// 2. 手动安装 VueRouter
Vue.use(VueRouter) // 导入 app 组件
import app from './App.vue' // 导入 自定义路由模块
import router from './router.js' var vm = new Vue({
el: '#app',
render: c => c(app), // render 会把 el 指定的容器中,所有的内容都清空覆盖,所以 不要 把 路由的 router-view 和 router-link 直接写到 el 所控制的元素中
router // 4. 将路由对象挂载到 vm 上
}) // 注意: App 这个组件,是通过 VM 实例的 render 函数,渲染出来的, render 函数如果要渲染 组件, 渲染出来的组件,只能放到 el: '#app' 所指定的 元素中;
// Account 和 GoodsList 组件, 是通过 路由匹配监听到的,所以, 这两个组件,只能展示到 属于 路由的 <router-view></router-view> 中去;

router.js

import VueRouter from 'vue-router'

// 导入 Account 组件
import account from './main/Account.vue'
import goodslist from './main/GoodsList.vue' // 导入Account的两个子组件
import login from './subcom/login.vue'
import register from './subcom/register.vue' // 3. 创建路由对象
var router = new VueRouter({
routes: [
// account goodslist
{
path: '/account',
component: account,
children: [
{ path: 'login', component: login },
{ path: 'register', component: register }
]
},
{ path: '/goodslist', component: goodslist }
]
}) // 把路由对象暴露出去
export default router

最新文章

  1. centos6.5 mysql-server 5.1.73启动失败
  2. 动画的使用&mdash;Drawable Animation
  3. PAT (Advanced Level) Practise:1008. Elevator
  4. 虚拟机评估——如何确定一个CPU核上部署的虚拟机数量?
  5. Discuz!开发手册
  6. SVN中的Branches分支以及Merge 应用举例
  7. SQL Server Configuration Manager出错
  8. Getting Started Synchronizing Files
  9. kali获得已经安装的软件列表
  10. Delphi 编写的Web Service
  11. ios策略模式应用
  12. Laravel-表单篇-controller
  13. web项目中获取各种路径的方法
  14. Hdu 4539 【状态DP】.cpp
  15. C#代码将html样式文件转为Word文档
  16. Java基于opencv—矫正图像
  17. 关于python,完善我计算机知识的一步。
  18. Opencv改变图像亮度和对比度以及优化
  19. ViewResolver和JSTL
  20. D3.js(v3)+react框架 基础部分之数据绑定及其工作过程与绑定顺序

热门文章

  1. C++如何使用宏定义来简化代码性能测试 | cpp macro like function to implement a performance profiler
  2. Selenium(十九):unittest单元测试框架(五) Page Object设计模式
  3. WinForms项目升级.Net Core 3.0之后,没有WinForm设计器?
  4. 面试再问ThreadLocal,别说你不会
  5. Linux安装docker-compose
  6. JS MD5 返回二进制格式
  7. 使用npm link 加速调试
  8. [转]How to enable macros in Excel 2016, 2013, and 2010
  9. 基于 Storyboard 多种方式的页面跳转、参数传递
  10. UITableView HeaderView,FooterView 使用SnapKit布局导致约束异常