web前端一起努力

webpack和Vue-router的使用

2018-10-30  本文已影响14人  追逐_chase
webPack.jpg

准备工作

路由的书名介绍

1.引入Vue
import Vue from 'vue'
2.引入vue-router
import VueRouter from 'vue-router'
3.挂载路由
Vue.use(VueRouter)

1.创建路由对象
2.创建.vue文件并并导入,入口文件main.js
3.创建Vue实例对象,用属性touter关联路由对象

<body>


    <div id="app">
     
    </div>
    
</body>
</html>


console.log("看看引入没有");
//文件入口
import Vue from "vue"
//1.引包
import VueRouter from "vue-router"
import app from "./App.vue"

import account from "./Account.vue"
import goodlist from "./GoodsList.vue"

//嵌套

import login from "./childen/login.vue"

import register from "./childen/register.vue"

//2手动 让router 挂在到Vue上
Vue.use(VueRouter)

//3创建路由对象
var routerObj = new VueRouter({
    routes: [
       
        // 嵌套路由 对象规则
        {
        path:"/account",
        component:account,
        children:[
            {path:"login",component:login},
            {path:"register",component:register}
        ]
        },

    

        {path:"/goodlist",component:goodlist}
        
    ]
    
})


var vm =  new Vue({
    el:"#app",
    // data:{
    //     msg:"这是什么"
    // }
    render:function(createElements){
        return createElements(app);
    },
    router:routerObj
})


//注意:App这个组件,是通过VM实例的 render函数,渲染出来的,render函数如果压迫渲染组件,渲染出来的组件,只能放到el:"#app" 所指定的元素中

//Account和Goodslist组件,是通过路由匹配监听到的,所以,这2个组件,只能展示属性路由的 <router-view></router-view>中去



//html代码
<template>
    <div>
        <h1>这是App组件</h1>
        <router-link to="/account">这是account组件</router-link>
        <router-link to="/goodlist">这是goodlist组件</router-link>
        <router-view></router-view>

    </div>

</template>

//逻辑处理
<script>
    
</script>


//样式
<style>

</style>



<template>

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

<script>
export default {
    
}
</script>


<style>

</style>



<template>
    <div>
        <h1>这是Account组件</h1>
        <router-link to="/account/login">登录</router-link>
        <router-link to="/account/register">注册</router-link>
        <router-view></router-view>

    </div>
</template>


<script>
export default {
    
}
</script>


<style>

</style>

<template>
    <div>
        <h1>登录组件</h1>
    </div>
</template>

<script>
export default {
    
}
</script>


<style>

</style>

<template>
    <div>
        <h1>这是注册组件</h1>
    </div>
</template>

<script>
export default {
    
}
</script>

<style>

</style>



vue结构图


image.png

效果


效果.gif

喜欢文章的👍一下,谢谢,有想学习[web]可以私聊我。

image.png
上一篇下一篇

猜你喜欢

热点阅读