From 0471b09f5a846e719de78e4c158aef617c87331b Mon Sep 17 00:00:00 2001 From: Johnson Chu Date: Wed, 3 May 2023 20:49:50 +0800 Subject: [PATCH] fix: special case handling any for v-for close #3112, close #3108 --- .../vue-language-core/src/utils/directorySharedTypes.ts | 5 +++++ packages/vue-test-workspace/vue-tsc/v-for/main.vue | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/packages/vue-language-core/src/utils/directorySharedTypes.ts b/packages/vue-language-core/src/utils/directorySharedTypes.ts index ba4504085..691297a89 100644 --- a/packages/vue-language-core/src/utils/directorySharedTypes.ts +++ b/packages/vue-language-core/src/utils/directorySharedTypes.ts @@ -49,6 +49,11 @@ export type GlobalComponents = // v-for export declare function getVForSourceType(source: number): [number, number, number][]; export declare function getVForSourceType(source: string): [string, number, number][]; +export declare function getVForSourceType(source: T): [ + T[number], // item + number, // key + number, // index +][]; export declare function getVForSourceType }>(source: T): [ T extends { [Symbol.iterator](): Iterator } ? T1 : never, // item number, // key diff --git a/packages/vue-test-workspace/vue-tsc/v-for/main.vue b/packages/vue-test-workspace/vue-tsc/v-for/main.vue index 263170b4e..2e050c368 100644 --- a/packages/vue-test-workspace/vue-tsc/v-for/main.vue +++ b/packages/vue-test-workspace/vue-tsc/v-for/main.vue @@ -50,6 +50,12 @@ {{ exactType(key, {} as string) }} {{ isNotAnyOrUndefined(key) }} + +
+ {{ exactType(val, {} as any) }} + {{ exactType(key, {} as number) }} + {{ isNotAnyOrUndefined(key) }} +