有没有一种方法可以强制打字稿的window
对象解析PaymentRequest
属性?这是我的角度组件内部的代码示例:
if (window.PaymentRequest) {
// This browser supports Payment Request
} else {
// Browser does not support Payment Request
}
这是我得到的错误:
error TS2339: Property 'PaymentRequest' does not exist on type 'Window'.
答案 0 :(得分:1)
您有一些选择。
更新为最新的TypeScript,其中包含以下定义:https://github.com/microsoft/TypeScript/blob/20e2be1e1a0fb2a2f481410d24e4cae915e5ece7/lib/lib.dom.d.ts#L11549
添加一个global.d.ts
,在其中扩展interface Window
以具有相应的API,并从上述lib.d.ts复制粘贴。
不太理想,因为您将要进行很多复制粘贴,如果其他人决定升级TypeScript,将来他们将不得不还原。
if ((window as any).PaymentRequest) {