From fd086bacefbec3b3a208641b99623eaf015060be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=97=E4=B8=87=E7=A8=8B?= <1498425439@qq.com> Date: Thu, 1 May 2025 17:18:21 +0800 Subject: [PATCH] fix: load Vue Route from array support export default const value --- .../plugin/show/lang/vue/VueRouterCache.java | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/src/main/java/io/github/linwancen/plugin/show/lang/vue/VueRouterCache.java b/src/main/java/io/github/linwancen/plugin/show/lang/vue/VueRouterCache.java index 4237d8c..73abce4 100644 --- a/src/main/java/io/github/linwancen/plugin/show/lang/vue/VueRouterCache.java +++ b/src/main/java/io/github/linwancen/plugin/show/lang/vue/VueRouterCache.java @@ -1,7 +1,6 @@ package io.github.linwancen.plugin.show.lang.vue; import com.intellij.ide.projectView.ProjectView; -import com.intellij.lang.ecmascript6.psi.ES6ExportDefaultAssignment; import com.intellij.lang.ecmascript6.psi.ES6ImportCall; import com.intellij.lang.ecmascript6.psi.ES6ImportedBinding; import com.intellij.lang.javascript.psi.JSArrayLiteralExpression; @@ -78,16 +77,11 @@ public class VueRouterCache extends FileLoader { if (psiFile == null) { return; } - @Nullable ES6ExportDefaultAssignment export = PsiTreeUtil.findChildOfType(psiFile, - ES6ExportDefaultAssignment.class); - if (export == null) { - return; + Collection arrays = + PsiTreeUtil.findChildrenOfType(psiFile, JSArrayLiteralExpression.class); + for (JSArrayLiteralExpression arr : arrays) { + parseArr(arr); } - @Nullable JSArrayLiteralExpression arr = PsiTreeUtil.findChildOfAnyType(export, JSArrayLiteralExpression.class); - if (arr == null) { - return; - } - parseArr(arr); } @Nullable @@ -192,7 +186,12 @@ public class VueRouterCache extends FileLoader { if (importCall == null) { return null; } - @NotNull Collection elements = importCall.resolveReferencedElements(); + @NotNull Collection elements; + try { + elements = importCall.resolveReferencedElements(); + } catch (Exception ignored) { + return null; + } for (PsiElement element : elements) { @Nullable PsiFile psiFile = PsiTreeUtil.getParentOfType(element, PsiFile.class); if (psiFile != null) {