3

我正在尝试将razorpay集成到我的角度项目中

这是代码

<form action="/purchase" method="POST">
<!-- Note that the amount is in paise = 50 INR -->
<script
src="https://checkout.razorpay.com/v1/checkout.js"
data-key="<YOUR_KEY_ID>"
data-amount="5000" 
data-name="Merchant Name"
data-description="Purchase Description"
data-image="https://your-awesome-site.com/your_logo.jpg"
data-prefill.name="Harshil Mathur"
data-prefill.email="support@razorpay.com"
data-theme.color="#F37254"
></script>
<input type="hidden" value="Hidden Element" name="hidden">
</form>

但是在angular js中没有执行这段代码请帮帮我

4

2 回答 2

13

如果您已经在使用 Angular,我建议您尝试我们的手动结帐。代码看起来像:

app.controller('PaymentsCtrl', [
  '$scope',
  function ($scope) {
    $scope.options = {
      'key': '<Your-Key-Here>',
      // Insert the amount here, dynamically, even
      'amount': '50000',
      'name': '',
      'description': 'Pay for Order #2323',
      'image': '',
      'handler': function (transaction) {
        $scope.transactionHandler(transaction);
      },
      'prefill': {
        'name': '',
        'email': '',
        'contact': ''
      }
    };
    $scope.btnClick = function () {
      var rzp1 = new Razorpay($scope.options);
      rzp1.open();
    };
}]);

在您的模板中:

<button ng-click="btnClick">Click to Pay</button>

免责声明:我在 Razorpay 工作。

于 2016-03-04T05:46:46.883 回答
3

如果您在外部加载 .js 时遇到任何问题,您可以使用 $.getScript(); 加载 .js 文件的函数。

  $scope.options = {

          'key': 'rzp_test_1DP5mmOlF5G5ag',
          'amount': 100,
          'name': '',
          'description': 'Pay for Order #2323',
          'image': '',
          'handler': function (transaction) {
            $scope.transactionHandler(transaction);
          },
          'prefill': {
            'name': '',
            'email': '',
            'contact': ''
          },
          theme:{
            color: '#3399FF'
          }
    };

  $scope.pay = function(){

          $.getScript('https://checkout.razorpay.com/v1/checkout.js', function() {
            var rzp1 = new Razorpay($scope.options);
          rzp1.open();

          });


   };
于 2016-10-21T11:18:00.620 回答