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) }} +