From 86f3b6c28c4250fd4ce5dd248b24ec3b1ab2e03c Mon Sep 17 00:00:00 2001 From: qubiaobiao <3294694717@qq.com> Date: Tue, 29 Sep 2026 11:50:19 +0800 Subject: [PATCH] =?UTF-8?q?chore(frontend):=20=E5=88=A0=E9=99=A4=E5=AD=A4?= =?UTF-8?q?=E5=84=BF=20auto-imports.d.ts?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 该文件由 unplugin-auto-import 生成(Jun 17 遗留),但该插件既不在 package.json 也未安装,文件永不再被重生成 ⇒ 孤儿。 危害:它把 76 个「运行时并不存在」的全局(ref/ElMessage/h/...)声明为合法, 漏写 import 时 IDE/tsc 不报错、运行到该行才 ReferenceError —— 陷阱制造机。 (R36 已实测:本项目全部走显式 import,且 R36 明确否决 auto-import 方案。) 闭环取证: - 全项目(含 backend/deploy/database/scripts)grep 'auto-imports' = 0 引用 - 扫描器核验:无任何源码「未导入即使用」这 76 个全局(0 命中) - 删除后 vite build 成功(exit 0),主包 hash index-C_gVjC9x.js 与 R36 完全一致 ⇒ 不影响任何运行时/产物(.d.ts 不参与打包) - 项目无 typescript/vue-tsc 依赖,build 不做类型检查 ⇒ 删除无类型回归面 --- src/auto-imports.d.ts | 91 ------------------------------------------- 1 file changed, 91 deletions(-) delete mode 100644 src/auto-imports.d.ts diff --git a/src/auto-imports.d.ts b/src/auto-imports.d.ts deleted file mode 100644 index 5ff4cea..0000000 --- a/src/auto-imports.d.ts +++ /dev/null @@ -1,91 +0,0 @@ -/* eslint-disable */ -/* prettier-ignore */ -// @ts-nocheck -// noinspection JSUnusedGlobalSymbols -// Generated by unplugin-auto-import -// biome-ignore lint: disable -export {} -declare global { - const EffectScope: typeof import('vue').EffectScope - const ElMessage: typeof import('element-plus/es').ElMessage - const acceptHMRUpdate: typeof import('pinia').acceptHMRUpdate - const computed: typeof import('vue').computed - const createApp: typeof import('vue').createApp - const createPinia: typeof import('pinia').createPinia - const customRef: typeof import('vue').customRef - const defineAsyncComponent: typeof import('vue').defineAsyncComponent - const defineComponent: typeof import('vue').defineComponent - const defineStore: typeof import('pinia').defineStore - const effectScope: typeof import('vue').effectScope - const getActivePinia: typeof import('pinia').getActivePinia - const getCurrentInstance: typeof import('vue').getCurrentInstance - const getCurrentScope: typeof import('vue').getCurrentScope - const getCurrentWatcher: typeof import('vue').getCurrentWatcher - const h: typeof import('vue').h - const inject: typeof import('vue').inject - const isProxy: typeof import('vue').isProxy - const isReactive: typeof import('vue').isReactive - const isReadonly: typeof import('vue').isReadonly - const isRef: typeof import('vue').isRef - const isShallow: typeof import('vue').isShallow - const mapActions: typeof import('pinia').mapActions - const mapGetters: typeof import('pinia').mapGetters - const mapState: typeof import('pinia').mapState - const mapStores: typeof import('pinia').mapStores - const mapWritableState: typeof import('pinia').mapWritableState - const markRaw: typeof import('vue').markRaw - const nextTick: typeof import('vue').nextTick - const onActivated: typeof import('vue').onActivated - const onBeforeMount: typeof import('vue').onBeforeMount - const onBeforeRouteLeave: typeof import('vue-router').onBeforeRouteLeave - const onBeforeRouteUpdate: typeof import('vue-router').onBeforeRouteUpdate - const onBeforeUnmount: typeof import('vue').onBeforeUnmount - const onBeforeUpdate: typeof import('vue').onBeforeUpdate - const onDeactivated: typeof import('vue').onDeactivated - const onErrorCaptured: typeof import('vue').onErrorCaptured - const onMounted: typeof import('vue').onMounted - const onRenderTracked: typeof import('vue').onRenderTracked - const onRenderTriggered: typeof import('vue').onRenderTriggered - const onScopeDispose: typeof import('vue').onScopeDispose - const onServerPrefetch: typeof import('vue').onServerPrefetch - const onUnmounted: typeof import('vue').onUnmounted - const onUpdated: typeof import('vue').onUpdated - const onWatcherCleanup: typeof import('vue').onWatcherCleanup - const provide: typeof import('vue').provide - const reactive: typeof import('vue').reactive - const readonly: typeof import('vue').readonly - const ref: typeof import('vue').ref - const resolveComponent: typeof import('vue').resolveComponent - const setActivePinia: typeof import('pinia').setActivePinia - const setMapStoreSuffix: typeof import('pinia').setMapStoreSuffix - const shallowReactive: typeof import('vue').shallowReactive - const shallowReadonly: typeof import('vue').shallowReadonly - const shallowRef: typeof import('vue').shallowRef - const storeToRefs: typeof import('pinia').storeToRefs - const toRaw: typeof import('vue').toRaw - const toRef: typeof import('vue').toRef - const toRefs: typeof import('vue').toRefs - const toValue: typeof import('vue').toValue - const triggerRef: typeof import('vue').triggerRef - const unref: typeof import('vue').unref - const useAttrs: typeof import('vue').useAttrs - const useCssModule: typeof import('vue').useCssModule - const useCssVars: typeof import('vue').useCssVars - const useId: typeof import('vue').useId - const useLink: typeof import('vue-router').useLink - const useModel: typeof import('vue').useModel - const useRoute: typeof import('vue-router').useRoute - const useRouter: typeof import('vue-router').useRouter - const useSlots: typeof import('vue').useSlots - const useTemplateRef: typeof import('vue').useTemplateRef - const watch: typeof import('vue').watch - const watchEffect: typeof import('vue').watchEffect - const watchPostEffect: typeof import('vue').watchPostEffect - const watchSyncEffect: typeof import('vue').watchSyncEffect -} -// for type re-export -declare global { - // @ts-ignore - export type { Component, Slot, Slots, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, ShallowRef, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue' - import('vue') -}