为了账号安全,请及时绑定邮箱和手机立即绑定

Vue 随笔1-加入vue router 后发现app被渲染了2次

标签:
AngularJS


原因:main中已经render了app,在route中不需要再加入app组件了,直接重定向到home即可

main.js

import Vue from 'vue'

import App from './App.vue'

import VueRouter from 'vue-router'

import routes from './router/router'

Vue.config.productionTip = false

Vue.use(VueRouter)

const router = new VueRouter({

    mode: 'history',

    routes

})

new Vue({

    router,

  render: h => h(App)

}).$mount('#app')

route.js

const home = r => require.ensure([], () => r(require('../page/home/index.vue')),'home');

const hello = r => require.ensure([], () => r(require('../page/hello/index.vue')),'hello');

const hi = r => require.ensure([], () => r(require('../page/hi/index.vue')),'hi');

const wawa = r => require.ensure([], () => r(require('../page/wawa/index.vue')),'wawa');

export default [{

        path: '/',

        redirect:'home'

    },{

        path:'/home',

        component:home

    },{

        path:'/hello',

        component:hello,

        children:[{

            path:'hi',

            component:hi

        }]

    },{

    path:'/wawa',

    component:wawa

    }

]

App.vue

<template>

    <div id="app">

        <router-view></router-view>

    </div>

</template>

main.js

import Vue from 'vue'

import App from './App.vue'

import VueRouter from 'vue-router'

import routes from './router/router'

Vue.config.productionTip = false

Vue.use(VueRouter)

const router = new VueRouter({

    mode: 'history',

    routes

})

new Vue({

    router,

  render: h => h(App)

}).$mount('#app')

©著作权归作者所有:来自51CTO博客作者小猪乔治的原创作品,如需转载,请注明出处,否则将追究法律责任

V


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消