javascript - 使用 AngularJS 在客户端初始化 Braintree 支付?

标签 javascript angularjs node.js braintree

生成客户端 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/

相关文章:

angularjs - 如何在 AngularJS 中使用 $http.get() 检查 URL 是否已缓存?

node.js - Node 请求写入文件损坏

node.js - NodeJS 复制尚不存在的目录和内容

javascript - 按钮在 Chrome 中的位置不正确

javascript - 无法使用父作用域变量

javascript - 如何在网络版谷歌地图中获取当前位置

angularjs - 使用 Angular UI Router 覆盖后退按钮以转到特定状态

node.js - Mongoose 不断打开与 MongoDB 的连接

javascript - 来自 jquery 的 mvc 日期时间选择器设置值未绑定(bind)到模型

javascript - 无法通过 Jquery 1.4 用于 ajax 实现的覆盖提交方法清除文本字段