我一直在尝试在Angular中使用Stripe Checkout API。我不明白这些声明和访问的工作方式
这是类型定义文件
https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/stripe-checkout/index.d.ts
我的代码:
declare const StripeCheckout: StripeCheckoutStatic;
@Component({
selector: 'ngx-stripe-button',
templateUrl: './stripe-button.component.html',
styleUrls: ['./stripe-button.component.scss']
})
export class StripeButtonComponent implements AfterViewInit {
isActive = false;
handler: StripeCheckoutHandler;
async ngAfterViewInit() {
await new Promise((resolve, reject) => {
const doc = window.document;
const stripeScript = doc.createElement('script');
stripeScript.type = 'text/javascript';
stripeScript.src = 'https://checkout.stripe.com/checkout.js/';
stripeScript.onload = resolve;
});
this.isActive = true;
this.handler = StripeCheckout.configure({});
}
}
我的问题是,仅使用声明const StripeCheckout的代码,我的代码如何访问外部脚本代码?
d.ts文件中的内容是否有任何作用?还是只是作为普通注释作为注释?
关于这些声明文件的工作方式,我可能只是不清楚。