我正在尝试将razorpay整合到我的angualar项目中
这是代码
<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>
但是在角度js中没有执行此代码 请帮帮我
答案 0 :(得分:10)
如果您已经使用了角度,我建议您尝试我们的manual checkout。代码看起来像:
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工作。
答案 1 :(得分:2)
如果您在外部加载.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();
});
};