From 74eccb02fb57d9f12acc3d890a09ac291d843fff Mon Sep 17 00:00:00 2001 From: Fan Pei Date: Mon, 10 Apr 2023 22:00:20 +0800 Subject: [PATCH] fix(vue3): Optimize the priority of calculating the displayed name of the component on the devtool (#2050) --- packages/app-backend-vue3/src/components/util.ts | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/app-backend-vue3/src/components/util.ts b/packages/app-backend-vue3/src/components/util.ts index ad91cb27e..a193c5a2e 100644 --- a/packages/app-backend-vue3/src/components/util.ts +++ b/packages/app-backend-vue3/src/components/util.ts @@ -36,6 +36,10 @@ export function getInstanceName (instance) { for (const key in instance.appContext?.components) { if (instance.appContext.components[key] === instance.type) return saveComponentName(instance, key) } + const fileName = getComponentFileName(instance.type || {}) + if (fileName) { + return fileName + } return 'Anonymous Component' } @@ -45,10 +49,10 @@ function saveComponentName (instance, key) { } function getComponentTypeName (options) { - const name = options.name || options._componentTag || options.__vdevtools_guessedName || options.__name - if (name) { - return name - } + return options.name || options._componentTag || options.__vdevtools_guessedName || options.__name +} + +function getComponentFileName (options) { const file = options.__file // injected by vue-loader if (file) { return classify(basename(file, '.vue'))