我正在创建一个包含第三方 (NMI) 以收集付款信息的 Web 应用程序。NMI 提供的脚本完成了所有必须完成的工作,即添加一个 id 为“payButton”的 html 按钮,当单击该按钮时,会显示一个弹出窗口以收集 CC 信息。
以下是我能够让它工作的唯一情况。
<html lang="en">
<head>
<!-- Other imports -->
<!--
NMI Collect.js script
-->
<script src="https://secure.networkmerchants.com/token/Collect.js" data-tokenization-key="security_key"></script>
<title>React App</title>
</head>
<body></body>
</html>
class App extends Component {
render() {
return (
<div>
<button type="button" id="payButton">Pay $5</button>
</div>
)
}
}
现在上面的代码工作得很好。我可以单击按钮,弹出窗口会按原样打开,但是当我想根据组件的状态隐藏或显示按钮时,弹出窗口无法正常工作。下面的代码是这种情况不起作用。
class App extends Component {
render() {
const test = false
let data
if(test) {
data = <div></div>
} else {
data = <button type="button" id="payButton">Pay $5</button>
}
return (
<div>
{data}
</div>
)
}
}