有没有更好的方法来编写此检查以查看 react 中的 prop 上是否存在值?

Is there a better way to write this check to see if a value exists on a prop in react?

我有这个道具进入我的组件,错误,如果我的表单没有错误,它是一个空对象。如果有错误,它们将被添加到对象中。我的问题是,我正在检查对象上的特定 属性,现在我正在检查它是否未定义。有没有更好的方法来执行这样的检查?这是代码片段

const SelectOverdrawnFunds = ({
  overdrawnFunds = [],
  options,
  setFieldValue,
  setErrors,
  errors,
}) => (
  <>
    {overdrawnFunds.map((select, index) => {
      const error =
        errors &&
        errors.overdrawnFunds !== undefined &&
        errors.overdrawnFunds[index] !== undefined;
      return (
        <SearchSelect
          key={index}
          name={`overdrawnFunds[${index}]`}
          label="Fund"
          options={options}
          TextFieldProps={{
            error: error,
            helperText: error ? 'Required' : '',
          }}
        />
      );
    })}
...
SelectOverdrawnFunds.propTypes = {
  overdrawnFunds: PropTypes.array,
  options: PropTypes.array,
  setFieldValue: PropTypes.func,
  setErrors: PropTypes.func,
  errors: PropTypes.object,
};

export default SelectOverdrawnFunds;

是的,您可以像这样使用可选链接

const error = !!errors?.overdrawnFunds?.[index];
//or
const error = Boolean(errors?.overdrawnFunds?.[index]);

或者如果您想与 undefined

进行严格比较
const error = errors?.overdrawnFunds?.[index] !== undefined;

您可以在 MDN

上找到有关可选链接的更多信息