结合webpack使用vue-router和它的子路由,即路由嵌套

在上一个项目的基础上进行的,所以基本的配置在这里就不赘述了。

一、结合webpack使用vue-router

1.新建组件.vue文件

2.启用路由

     安装插件cnpm i vue-router -S

     PS:npm install name -save 简写(npm install name -S)

   npm install name -save-dve 简写(npm install name -D)

 vue-router:https://router.vuejs.org/zh/

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

最终效果:点击响应的选项显示

二、结合webpack实现children子路由

 可以安装两个关于vue的插件,Vetur和Vue 2 Snippets

结果显示

三、style 标签的lang属性和scoped属性

<style lang="scss" scoped>

普通的style标签只支持普通的样式,如果想要启用 scss 或 less ,需要为 style 元素,设置 lang 属性
只要 style 标签 是在 .vue 组件中定义的,那么推荐都为 style 开启 scoped 属性

 四、抽离路由模块

新建router.js

 

 

posted @ 2019-09-16 14:10  小甜橘  阅读(404)  评论(0编辑  收藏  举报
返回顶部