我正在尝试Stripe.card.createToken()
生成一个我应该用于后端的令牌。但是,我使用的是Angular和TypeScript,因此它们必须很好地协同工作。我目前正在使用angular-stripe和stripe.d.ts,因此TypeScript和Angular可以使用。这是我正在尝试做的,但它不起作用:
namespace app.Areas.Subscription {
export class StripePaymentController {
CreditCard: string;
Expiry: Array<string>;
CVC: string;
stripe: StripeStatic;
card: StripeTokenData;
Subscribe() {
this.card = {
number: this.CreditCard,
exp_month: Number(this.Expiry["month"]),
exp_year: Number(this.Expiry["year"]),
cvc: this.CVC
};
this.stripe.createToken(this.card, this.stripeResponseHandler);
}
stripeResponseHandler() {
console.log("Handled");
}
}
app.controller("StripePaymentController", StripePaymentController);
}
当我尝试这个时,它会告诉我:
TypeError:无法读取未定义的属性“createToken”
当我检查this.stripe
时,它说undefined
。这可能是因为我没有初始化StripeStatic接口吗?如果是这样,我该怎么办?我真的不知道为什么这不起作用。感谢。
答案 0 :(得分:0)
哦,好吧,所以我想尝试一些完全不同的东西(因为TypeScript对我来说并不总是很好),所以我用this.stripe.createToken()
更改了Stripe.createToken()
。显然Stripe
属于StripeStatic
类型,现在它可以正常工作。男子,发帖后2分钟:(