生成客户端 token 后,我尝试在客户端初始化 Braintree JS SDK。
其文档中的代码指出要使用以下内容:
braintree.setup("CLIENT-TOKEN-FROM-SERVER", "custom", {id: "checkout"});
客户端 token 被抓取并放入 Angular Controller 的范围内,我尝试使用以下方法将其插入客户端:
<script>
braintree.setup({{ braintreeToken }}, "custom", {id: "checkout"});
</script>
但是,我在加载页面时收到以下错误:
Uncaught SyntaxError: Unexpected token {
关于如何解决或解决此问题有什么想法吗?
注意:客户端 token 没有问题。看起来是一个字符串,我可以正常在页面上显示它。
最佳答案
braintree.setup
在 Angular 评估 BraintreeToken 的值之前被调用。您可以在 Angular Controller 中包含对 Braintree.setup 的调用,以便可以传入 BraintreeToken。这是使用 Angular 解决此问题的通用方法:
angular.module('myApp')
.controller('myCtrl', ['$http', function($http) {
$http.post('/someUrlThatProvidesYourClientToken', {customer_id: 'some-id'})
.then(function(token) {
braintree.setup(token, "custom", {id: "checkout"});
}, function(err) {
// Do something with error
});
}]);
关于javascript - 使用 AngularJS 在客户端初始化 Braintree 支付?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32997607/