Parcourir la source

fix perf measure regression for nested components of the same name (fix #5181)

Evan You il y a 9 ans
Parent
commit
45e273fa02
2 fichiers modifiés avec 6 ajouts et 5 suppressions
  1. 3 3
      src/core/instance/init.js
  2. 3 2
      src/core/instance/lifecycle.js

+ 3 - 3
src/core/instance/init.js

@@ -16,7 +16,7 @@ export function initMixin (Vue: Class<Component>) {
   Vue.prototype._init = function (options?: Object) {
     /* istanbul ignore if */
     if (process.env.NODE_ENV !== 'production' && config.performance && mark) {
-      mark('init')
+      mark('vue-perf-init')
     }
 
     const vm: Component = this
@@ -57,8 +57,8 @@ export function initMixin (Vue: Class<Component>) {
     /* istanbul ignore if */
     if (process.env.NODE_ENV !== 'production' && config.performance && mark) {
       vm._name = formatComponentName(vm, false)
-      mark('init end')
-      measure(`${vm._name} init`, 'init', 'init end')
+      mark('vue-perf-init-end')
+      measure(`${vm._name} init`, 'vue-perf-init', 'vue-perf-init-end')
     }
 
     if (vm.$options.el) {

+ 3 - 2
src/core/instance/lifecycle.js

@@ -164,8 +164,9 @@ export function mountComponent (
   if (process.env.NODE_ENV !== 'production' && config.performance && mark) {
     updateComponent = () => {
       const name = vm._name
-      const startTag = `start ${name}`
-      const endTag = `end ${name}`
+      const id = vm._uid
+      const startTag = `vue-perf-start:${id}`
+      const endTag = `vue-perf-end:${id}`
 
       mark(startTag)
       const vnode = vm._render()