Angularjs Braintree onReady未在角度应用范围内开火
我在我的角度应用程序中使用。当应用程序加载时,Angularjs Braintree onReady未在角度应用范围内开火,angularjs,braintree,Angularjs,Braintree,我在我的角度应用程序中使用。当应用程序加载时,braintree.setup('TOKEN','customer',{})按预期工作。onReady正确启动 这是我的控制器: angular.module('braintree') .controller('BraintreeCtrl', [ function() { var self = this; self.setup = function() { console.log('setup
braintree.setup('TOKEN','customer',{})
按预期工作。onReady
正确启动
这是我的控制器:
angular.module('braintree')
.controller('BraintreeCtrl', [
function() {
var self = this;
self.setup = function() {
console.log('setup braintree');
braintree.setup('myBTtoken', 'custom', {
id: 'braintreeForm',
onReady: function() {
console.log('on ready');
},
hostedFields: {
styles: {},
number: {
selector: '#card-number',
placeholder: 'Card number'
},
cvv: {
selector: '#card-cvv',
placeholder: 'CVV'
},
expirationMonth: {
selector: '#card-expiration-month',
placeholder: 'MM'
},
expirationYear: {
selector: '#card-expiration-year',
placeholder: 'YY'
},
postalCode: {
selector: '#card-postal',
placeholder: 'Postal code'
}
}
});
}
}
]);
form(name='braintreeForm', id='braintreeForm', novalidate, ng-init='ctrl.setup()')
.form-group
label Card Number
#card-number
.form-group
label CVV
#card-cvv
.form-group
label Expires
#card-expiration-month
.form-group
#card-expiration-year
.form-group
label Zip Code
#card-postal
button(type='submit') Submit
视图(翡翠):
angular.module('braintree')
.controller('BraintreeCtrl', [
function() {
var self = this;
self.setup = function() {
console.log('setup braintree');
braintree.setup('myBTtoken', 'custom', {
id: 'braintreeForm',
onReady: function() {
console.log('on ready');
},
hostedFields: {
styles: {},
number: {
selector: '#card-number',
placeholder: 'Card number'
},
cvv: {
selector: '#card-cvv',
placeholder: 'CVV'
},
expirationMonth: {
selector: '#card-expiration-month',
placeholder: 'MM'
},
expirationYear: {
selector: '#card-expiration-year',
placeholder: 'YY'
},
postalCode: {
selector: '#card-postal',
placeholder: 'Postal code'
}
}
});
}
}
]);
form(name='braintreeForm', id='braintreeForm', novalidate, ng-init='ctrl.setup()')
.form-group
label Card Number
#card-number
.form-group
label CVV
#card-cvv
.form-group
label Expires
#card-expiration-month
.form-group
#card-expiration-year
.form-group
label Zip Code
#card-postal
button(type='submit') Submit
然而,当我离开这个页面,然后返回到这个状态,BraintRectrl
启动,onReady
从不启动,我不能输入任何数据
当我使用braintree表单返回状态时,如何重新设置braintree???我在JavaScript SDK上使用braintree
目前还没有官方支持的机制。这是一个我们已经意识到的问题,我们将在未来的版本中提供解决方案。不幸的是,我不能提供这项工作的时间表
同时,我建议联系我们的支持团队(support@braintreepayments.com)并密切关注我们网站上的相关线索。同样,虽然没有官方支持的解决方案,但人们已经找到了一些
很抱歉,我没有更好的消息,但是我们感谢您提出这个问题。在过去,
braintree.setup()
只能调用一次而不会被窃听
他们现在已经实现了teardown()
函数,该函数将允许您再次调用braintree.setup()
简言之,当您想要销毁会话时,可以调用teardown()
,可能是在离开页面时