没有 react-paypal-button-v2 ~~~有 60KB 的开销
类似的问题在这里,但他们建议react-paypal-button-v2
我正在尝试制作一个 React PayPal 按钮来更改props更改的账单金额。
我使用props价格调用以下组件,每次价格更改时,我都想重新渲染按钮以更新实际价格。没有 react-paypal-button-v2
const PaypalForm = props => {
let paypalRef = useRef();
useEffect(() => {
window.paypal
.Buttons({
createOrder: (data, actions) => {
return actions.order.create({
purchase_units: [
{
description: "test",
amount: {
currency_code: "USD",
value: props.price
}
}
]
});
},
onApprove: async (data, actions) => {
const order = await actions.order.capture();
console.log(order);
},
onError: err => {
setError(err);
console.error(err);
}
})
.render(paypalRef.current);
}, [props.price]);
return (
<Row className="justify-content-center">
{error && <div>Uh oh, an error occurred! {error.message}</div>}
<div ref={paypalRef} />
</Row>
);
};
除了在每次props更改时创建一个新按钮并在旧按钮的底部添加一个新按钮外,一切正常。我想用我的新按钮代替旧按钮。不使用 react-paypal-button-v2