gpt4 book ai didi

javascript - 如何将三元实现为点击处理程序

转载 作者:行者123 更新时间:2023-12-03 07:18:47 25 4
gpt4 key购买 nike

整个早上都在研究这个,似乎无法弄清楚这个三元表达式有什么问题。没有错误被记录,但表达式的第一部分从不计算。有什么想法吗?

<a className="buy-proposals-credits" onClick={userPaywallStatus === PAYWALL_STATUS_WAITING 
? () => openModal(PAYWALL_MODAL)
: () => openModal(PROPOSAL_CREDITS_MODAL)}>(Manage proposal credits)</a>

最佳答案

三元运算符中的条件在您的应用程序安装时进行评估,而不是每次调用 render 时进行评估,因此由于 userPaywallStatus === PAYWALL_STATUS_WAITING 最初为 false表达式刚变成 () => openModal(PROPOSAL_CREDITS_MODAL)}>(Manage proposal credits)

要解决此问题,您还需要将条件包装在一个函数中,以便在调用 onClick 时对其进行评估,如下所示:

<a className="buy-proposals-credits"
onClick={
() => userPaywallStatus === PAYWALL_STATUS_WAITING
? openModal(PAYWALL_MODAL)
: openModal(PROPOSAL_CREDITS_MODAL)
}
>
(Manage proposal credits)
</a>

关于javascript - 如何将三元实现为点击处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52447566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com