在 Vue3 + Vite + TS 的项目中,接入 MicroApp 微前端时,编辑器出现 TS2339: Property ‘webkit’ does not exist on type ‘Window & typeof globalThis’. 的错误提示。
问题原因
项目中在 window 上挂载了一个 webkit 方法,但是 TS 并不知道这个方法的存在,所以会报错。
问题解决
在 shims-vue.d.ts 或 vite-env.d.ts 文件中,当然也可以在 src 目录下新建一个 types.d.ts 的类型文件,添加如下代码:
interface Window {webkit: any;opera: any;MSStream: any;readonly '__MICRO_APP_ENVIRONMENT__': any
}
注意:假如xxx.d.ts文件不在src目录下,则需要在根目录的 tsconfig.json 文件中,指定其所在目录,如下图所示