Pixi.js应用中globalThis自定义属性遇TypeScript TS7017错误求助
解决TypeScript中globalThis自定义属性类型报错问题
你遇到的TS7017错误,是因为仅扩展Window接口后,TypeScript的globalThis类型并未自动关联该扩展。下面是两种可行的解决办法:
方法一:直接扩展globalThis的类型
在全局声明块中,为typeof globalThis添加自定义属性,让TypeScript直接识别globalThis上的__PIXI_APP__:
declare global { interface typeof globalThis { // 建议替换any为具体的PIXI应用类型,比如PIXI.Application __PIXI_APP__: PIXI.Application; } } globalThis.__PIXI_APP__ = application;
方法二:将globalThis断言为Window类型
如果更习惯扩展Window接口,可以通过类型断言告诉TypeScript,当前globalThis属于Window类型,从而使用你扩展的属性:
import type { Application } from 'pixi.js'; // 按需导入PIXI类型 declare global { interface Window { __PIXI_APP__: Application; } } // 通过类型断言绕过类型检查 (globalThis as Window).__PIXI_APP__ = application;
额外建议
尽量避免使用any类型,替换为PIXI.Application(需确保已安装PIXI的类型定义),这样能获得完整的类型提示和检查,减少潜在的类型错误。
内容的提问来源于stack exchange,提问作者Ashutosh
相关产品推荐
相关产品推荐

