我有一个我在jQuery中使用的条带对象。
我的对象的属性是获取条带标记的函数。
getStripeToken : function(){
stripeOb.stripe.createToken(stripeOb.stripeCard).then(function(result) {
if (result.error) {
// Inform the user if there was an error
var errorElement = document.getElementById('card-errors');
return result.error.message; //errorElement.textContent =
} else {
// Send the token to your server
console.log(result.token);
return result.token;
}
});
},
console.log输出undefined到控制台。 我在提交表单时调用该函数。并将结果分配给另一个对象prop
stripeOb.token = stripeOb.getStripeToken(stripeOb.stripeCard);
stripeOb.stripeTokenHandler(stripeOb.token);
哪个电话:
`stripeTokenHandler : function(token) {
// Insert the token ID into the form so it gets submitted to the server
var form = document.getElementById('payment-form');
var hiddenInput = document.createElement('input');
hiddenInput.setAttribute('type', 'hidden');
hiddenInput.setAttribute('name', 'stripeToken');
hiddenInput.setAttribute('value', token);
form.appendChild(hiddenInput);
console.log(token);
// Submit the form
//form.submit();
}`
stripeTokenHandler中的控制台日志首先返回undefined,然后getStripeToken中的console.log输出令牌对象。
为什么在第二个函数console.log之后第一个函数console.log输出正确,为什么stipeOb.token没有设置为结果?