如何遍历 React 中的字典以分别获取值并使用 html 显示?

dev_in_training

我有一个模态,我想从后端控制器向用户显示验证。errors 是一个带有字符串键和数组值的字典。我正在使用 React 并将验证错误设置为状态。我可以将这些错误记录到我的控制台。但是我无法让它们显示在 UI 上。这就是我使用状态的方式:

const [errors, setErrors] = useState<string[]>([]);

当我这样做时

console.log(Object.entries(errors).map(([key, value]) => value));

这是打印到控制台的内容。 在此处输入图片说明

如何进一步迭代以在 UI 中分别显示每个错误?在我的模态中,我尝试做

<div className="modal">
                {
                    errors.length > 0 && (
                        Object.entries(errors).map(([key, value]) => { return <div>{value}</div>})
                    )
                }
                <label>First Name: </label>

但这不会显示任何内容。我想我需要单独拉出每个字符串并将其显示在一个段落中,但我不知道该怎么做。

密码猴

根据 的输出console.log(Object.entries(errors).map(([key, value]) => value));,您的errors变量如下所示:

const errors = [
  ["required something", "invalid"],
  ["some other stuff", "required"]
];

或者像这样:

const errors = {
  error1: ["required something", "invalid"],
  error2: ["some other stuff", "required"]
};

您的默认值很[]容易让人相信是前者,但您的使用Object.entries暗示了后者。

它之所以重要,主要是因为这种情况: errors.length > 0

所以我将解决这两种情况。假设您的errors变量是前一种情况,即数组。然后渲染它,你只需这样做:

 {errors.length > 0 &&
     errors.map(([key, value]) => {
          return <div key={key}>{key}</div>;
   })}

但是,如果errors变量是后一种情况下的对象,那么您将像这样渲染它:

{Object.entries(errors).length > 0 &&
    Object.entries(errors).map(([key, value]) => {
       return <div key={value[0]}>{value[0]}</div>;
  })}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用React显示HTML实体?

如何遍历HTML中的JavaScript对象?

React-如何使用JSX在render方法中遍历字典?

如何使用react ref从html select元素获取值?

我如何遍历JSON数组并在React中的表中显示数据

React Select-如何显示/遍历api调用中的数据而不是选项中的硬编码选项?

在React中显示纯HTML

如何使用React显示JSON中接收到的HTML

如何遍历异步返回的对象并将其显示在react.js中?

如何遍历React.js中的键值

在React JSX中显示HTML标记

如何在ReactJS中遍历HTML内容

如何遍历数组以显示在HTML表中

如何使用React Native从JSON显示正确的html符号

如何使用react native render html在react native中显示一行中的文本和图像?

如何使用forEach在HTML标记内显示所有对象的值,而不是手动遍历所有值

如何使用React Native遍历JSON数组?

如何使React组件接受像HTML标签这样的值,而不是从属性中获取值

遍历json对象并使用React显示数据?

如何显示遍历从文件读取的多行的html表

如何循环遍历javascript对象并在html中显示值

如何使用javascript和jquery从html元素到特定的html元素字段分别获取值

在React中,如何在HTML表中显示来自API的数据?

如何使用React(Rails)遍历数组

如何使用 javascript 遍历 HTML 实体

如何使用react使用复选框显示隐藏的html表格行

如何让 CSS 在 HTML 中显示

在 React Native 中显示 html 标签

如何遍历 firestore 数组并在 React Native 中获取值