(& lt; any>窗口).SomeLibrary.SomeMethod (__arg1、最长)
(<any>window).SomeLibrary.SomeMethod(arg1,arg2)?
在Angular2中使用(<any>window)
是什么?
我在研究Stripe支付库时发现了它:
(<any>window).Stripe.card.createToken({
number: this.cardNumber,
exp_month: this.expiryMonth,
exp_year: this.expiryYear,
cvc: this.cvc
}, (status: number, response: any) => {
if (status === 200) {
this.message = `Success! Card token ${response.card.id}.`;
} else {
this.message = response.error.message;
}
});
http://blog.mgechev.com/2016/07/05/using-stripe-payment-with-angular-2/看起来像是让你在控制器中使用全局对象的东西,但我真的不明白细节。似乎找不到其他答案了。
有时候你会发现你对值,而不是TypeScript。通常情况下,当你知道某些实体的类型可能比其当前类型更具体。
类型断言是告诉编译器"相信我,我知道我是什么"的一种方式做。"
可能有两种形式:
(<any>window)
或
(window as any)
参见https://www.typescriptlang.org/docs/handbook/basic-types.html#type-assertions
另一种方法是使用Square bracket syntax
window['Stripe'].card...
在这种情况下,typescript编译器也可以正常工作
<any>
表示TypeScript中的强制类型转换,因此将window
转换为any
表明编译器不再受限于它认为窗口对象是什么以及它具有什么属性。
(<any>window)
正在阻止编译时类型错误检查将调用标记为无效。
相关文章:
- 查找最短和最长日期
- 如何找到Javascript元素的最长边
- 找出句子中最长的单词——Javascript
- 2 Bootstrap日期选择器:如何更改最短和最长日期
- 如何在添加时间值时始终恢复到最长24小时
- 将文本区域宽度调整为最长的文本行
- javascript秒表限制最长时间
- 最短和最长日期
- JS/Jquery:字符串到单词的文本分割脚本使用字典和最长匹配
- 查找数组中最长的单词/字符串
- 为什么我在 Javascript 中最长的数组值函数不起作用?新手请帮忙
- 获取数组中最长字符串的长度
- 舍入时间间隔最长为 15 分钟步长
- 在javascript中展平数组以获得最长的字符串
- 工作表的 Google 脚本 - 超出最长执行时间
- Node.js-同步操作中建议的最长时间
- 如何在mongoDb中找到字段值的最长和最短长度
- 按最长的公共起始子字符串对字符串进行分组
- 查找字符串javascript中最长的单词
- (& lt; any>窗口).SomeLibrary.SomeMethod (__arg1、最长)