使用if语句检测value是否返回undefined不工作



我正在使用React-Use-Cart制作一个应用程序。我正在使用getItem钩子来检测价格的变化。这真的很简单,这就是它的工作原理:如果商品的数量大于0,那么它将返回价格,或者如果它是0,那么它将返回undefined。

那么,这是我的程序-

const totalitem = getItem(products.id).itemTotal;
const totalitem2 = JSON.stringify(totalitem);

<h1>{totalitem === "undefined" ? "Zero!" : totalitem2}</h1>

这个不工作!当totalitem变为0时,React DOM抛出一个错误:

Uncaught TypeError: Cannot read properties of undefined (reading 'itemTotal')

我真的不知道如何解决这个问题,我很确定这是一个常见的问题。有人能帮帮我吗?提前谢谢你。

第一个问题(触发错误)是由于访问undefined上的itemTotal属性。你可以使用可选的链接来解决这个问题。

const totalitem = getItem(products.id)?.itemTotal;
const totalitem2 = JSON.stringify(totalitem);

第二个问题是检查"undefined"作为字符串。

<h1>{totalitem === undefined ? "Zero!" : totalitem2}</h1>

最新更新