首页 > 解决方案 > 考虑到我想向数据库发出发布请求,初始状态属性应该在 react-redux 减速器中为空还是未定义?

问题描述

我正在使用 Reactjs 和 react-redux 以及 spring boot 和 Postgres。在化简器中初始化初始状态属性时,考虑到我想将它们保存在数据库中,它们应该为空还是未定义?

例如:

const initialState = {
    rollNo: '',
    firstName: '',
    middleName: '',
}

const reducer = (initialState,action) => {
     ///
}

从提供的表单中的 TextField 中获取 rollNo、firstName 等。rollNo、firstName 等应该为 null 还是未定义?我想将它们保存在数据库中,某些值可以为空。如果我让它们为空,我会收到错误:
index.js:1375 警告:valueprop on inputshould not be null。考虑使用空字符串来清除组件或undefined不受控制的组件。如果我将它们保持未定义,它们是否会导致在后端特别是 Spring Boot 中获取它们时出现问题?

谢谢你的时间。任何帮助都会很棒:)

标签: reactjspostgresqlreact-redux

解决方案


react 中的输入不能具有null指示 - 对 React- 它们是不受控制的组件(它们在内部管理它们的状态)然后你继续给它们一个值,即使它对你的输入它也没有意义服务器。

您应该做的是在发送请求之前从后端取消空字段或从前端取消它们。


推荐阅读