javascript - Stripe Angular Controller 不更新 View

标签 javascript angularjs stripe-payments

我在使用 Angular 1.6 Controller 和 Stripe 时遇到此问题。我有一个 Controller ,可以根据步骤变量更改 View 。我正在根据 Stripe 的成功回调更改步骤,如下所示:

stripe.createToken(card).then((result) => {

                     if (result.error) {
                         // Inform the customer that there was an error.
                         var errorElement = document.getElementById('card-errors');
                         errorElement.textContent = result.error.message;
                      } else {
                        // Send the token to your server.
                        stripe_token = result.token;
                        //Change step
                        $scope.step = step;
                      }
                })
                .catch( e =>{
                    console.log("Error");
                });

问题是当在回调内分配步骤时,值已分配但 View 未更新。有什么想法可以解释为什么这只发生在 Angular 中的 Stripe 回调中吗?

最佳答案

我没有足够的声誉来为您自己的答案添加评论,但我只是想补充一点,将适当的函数传递给 $scope.apply 比简单地调用它更好零参数。

关于javascript - Stripe Angular Controller 不更新 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55775560/

相关文章:

javascript - Puttygen 和 NodeJS 上生成的 RSA key 的长度不同

javascript - 在 Angular 中, $pending 仅在 $asyncValidators 的表单上设置吗?

angularjs - 如何在Angular JS中提交错误消息

javascript - Stripe 支付流程

javascript - 使用javascript动态创建具有多个元素的多个div?

javascript - 单击浏览器的后退和前进按钮时在页面选项卡之间导航

Java Stripe API

ruby-on-rails - 希望仅在成功完成 Stripe 结帐付款后才提交Rails表单

javascript - 我可以以平台中立的方式查询无 URL 栏移动 Safari 窗口高度吗?

javascript - 如何在javascript中转换路径?尤其是 AngularJS?