问题描述
我正在创建一个 Element from stripe.js
我的代码是: html部分:
<div class="group">
<label>
<span>Card number</span>
<div id="card-number" class="field"></div>
</label>
<label>
<span>Expiry date</span>
<div id="card-expiry" class="field"></div>
</label>
<label>
<span>CVC</span>
<div id="card-cvc" class="field"></div>
</label>
</div>
JS 相关部分:
var style = {
base: {
iconColor: '#666EE8',color: '#31325F',lineHeight: '40px',fontWeight: 300,fontFamily: 'Helvetica Neue',fontSize: '15px','::placeholder': {
color: '#CFD7E0',},};
var cardNumber = elements.create('cardNumber'/*,{style: style}*/);
cardNumber.mount('#card-number');
var cardExpiry = elements.create('cardExpiry'/*,{style: style}*/);
cardExpiry.mount('#card-expiry');
var cardCvc = elements.create('cardCvc'/*,{style: style}*/);
cardCvc.mount('#card-cvc');
虽然我保留了 {style: style} 选项的注释,但一切正常,但是一旦我尝试应用该样式,就会出现以下错误:
The last overload gave the following error.
Argument of type '"cardCvc"' is not assignable to parameter of type '"paymentRequestButton"'.
var cardCvc = elements.create('cardCvc',{style: style});
注意:我对上面的 3 个元素有这个错误。
根据文档,此代码应该是有效的。任何人都可以启发我这一点吗?
解决方法
我终于找到了错误:
检查 StripeElementStyle
元素,fontWeight 是一个字符串,表示行:fontWeight: 300
使变量样式解释为其他接口。
我使用 fontWeight: '300'