鍍金池/ 問答/HTML/ Vue鉤子函數(shù)調(diào)用順序的問題?

Vue鉤子函數(shù)調(diào)用順序的問題?

之前看了一篇vue各種鉤子函數(shù)調(diào)用順序的文章https://segmentfault.com/a/11... 我照著作者的思路寫了一個(gè)程序。測(cè)試出來的結(jié)果和文章的不一樣,請(qǐng)各位幫忙解答。

router/index.js

import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      name: 'HelloWorld',
      component: HelloWorld
    }, {
      path: '/test',
      name: 'test',
      component: resolve => require(['../test.vue'], resolve)
    }
  ]
})

test.vue內(nèi)容同作者的一樣,放在和App.vue平級(jí)的位置。

打印出來的順序如下:
路由全局勾子:beforeEach
根組件:beforeCreate
根組件:created
根組件:beforeMount
根組件:mounted
組件路由勾子:beforeRouteEnter
路由全局勾子:afterEach
組件:beforeCreate
組件:created
組件:beforeMount
指令binding
指令inserted
組件:mounted
組件路由勾子beforeRouteEnter的next
nextTick

回答
編輯回答
默念

我聲望不夠,要不我也下箭頭

2018年7月23日 22:24
編輯回答
柒槿年

提問懶成這樣 舅扶你

2018年8月12日 20:39
編輯回答
掛念你

問題在于test.vue的加載方式,作者使用的是直接加載的方式

import Test from '@/test'
{
  path: '/test',
  name: 'test',
  component: Test
}

我使用的是懶加載的方式

import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/',
      name: 'HelloWorld',
      component: HelloWorld
    }, {
      path: '/test',
      name: 'test',
      component: resolve => require(['../test.vue'], resolve)
    }
  ]
})
2018年3月26日 16:37