我只是在尝试实施Razorpay结帐,它会像这样处理payid的响应:
options = {
'key': 'rzp_test_xxxxxxxxxx',
'amount': 0, // 2000 paise = INR 20
'name': 'JJJJ',
'description': 'Purchase Description',
'image': '../../../../assets/img/jiffylogo.png',
'display_currency': 'USD',
'display_amount': 0,
'handler': function (response) {
return response.razorpay_payment_id;
},
'prefill': {
'name': '',
'email': ''
},
'notes': {
'address': ''
},
'theme': {
'color': '#AF8AC0'
}
};
现在,我希望从Angular函数访问razorpay_payment_id,以将其进一步发送到服务器端进行如下处理:
const payid = this.rzp1.open();
但这不会返回付款ID。
我尝试了不同的方法来完成它,就像在函数中一样,而不是返回它,我尝试将值分配给组件范围的变量。但这由于明显的原因而返回未定义。
这是Razorpay的原始代码:
<button id="rzp-button1">Pay</button>
<script src="https://checkout.razorpay.com/v1/checkout.js"></script>
<script>
var options = {
"key": "YOUR_KEY_ID",
"amount": "2000", // 2000 paise = INR 20
"name": "Merchant Name",
"description": "Purchase Description",
"image": "/your_logo.png",
"handler": function (response){
alert(response.razorpay_payment_id);
},
"prefill": {
"name": "Gaurav Kumar",
"email": "test@test.com"
},
"notes": {
"address": "Hello World"
},
"theme": {
"color": "#F37254"
}
};
var rzp1 = new Razorpay(options);
document.getElementById('rzp-button1').onclick = function(e){
rzp1.open();
e.preventDefault();
}
</script>
已针对角度用途进行了如下修改:
How to Integrate Razorpay in Angular 2?
你有什么主意吗?