我想知道是否有一个衬里可能像这样
let updatedUser;
if (firstName) {
updatedUser = { ...userData, firstName };
}
if (lastName) {
updatedUser = { ...userData, lastName };
}
if (password) {
updatedUser = { ...userData, password };
}
我只是检查名字、姓氏等是否为空。如果我有几个这样的字段呢?
因此,如果我写入,我不想用空值更新任何字段
updatedUser = { ...userData, firstName, lastName, password };
如果我的字段为空,是否有任何可能的替代方案可以告诉object spread或任何其他内容不要更新?
不太可能,但是你可以使用一个小助手:
const assignDefined = (target, props) =>
Object.entries(props).forEach(([k, v]) => v && (target[k] = v));
这样你就可以写:
updateUser = assignDefined({...userData}, { firstName, lastName, password });
您可以使用
const updatedUser = Object.assign({},
userData,
firstName && {firstName},
lastName && {lastName},
password && {password}
);
或类似于对象扩展语法:
const updatedUser = {
...userData,
...firstName && {firstName},
...lastName && {lastName},
...password && {password}
};
虚假值将被忽略,并且不会导致任何属性的创建。
我已经搜索和尝试了许多答案,但我似乎无法让这个工作。我在MongoDB中有一个用户(db.users...)我试图在一个特定的文档中更新一个名为“角色”的字段。如果我执行: assert失败:需要对象错误:在printStackTrace(src/mongo/shell/utils.js:37:15)在doassert(src/mongo/shell/assert.js:6:5)在assert(s
问题内容: 我有一个包含用户数据的类,如下所示: 我需要计算非字段,以显示用户已填充的配置文件的百分比。还有一些,我不希望在百分比计算要考虑几个字段:,和。 一种简单的方法是使用多个语句来获取非null字段,但这将涉及大量样板代码,并且还有一个我需要显示完成百分比的类。因此,我创建了一个实用程序函数,如下所示: 然后我按如下所示调用此函数: 我的问题是,这是我不算数字段还是可以进一步改进的最佳方法
我们的REST API接收一些JSON对象输入,其中一些字段要求为非空。这些可以是String/Intger,甚至可能是其他一些类实例作为引用。 我们试图找到一种方法来强制这些字段不为null,而不是API中null检查的正确方法。当前: 我们想要的是: 我们尝试了3件事: 1) 升级至jackson 2.0.6并使用annotation com。fasterxml。杰克逊。注释。JsonProp
我使用了Gson,但我需要转换器只序列化非空值或非空值。 例如: 现在,将该对象转换为json的Gson实例如下所示
我正在使用Android MVVM架构和LiveData。我有一个这样的物体 我的视图模型是这样的 如何确保用户对象中的某个字段发生更改时,观察员收到通知?顺便说一句,重要的是要将这些数据保存在单独的对象中,而不是在ViewModel中使用字符串等主要值。
问题内容: 是否有更新的方式只有一些领域使用该方法的实体对象从春数据JPA? 例如,我有一个这样的JPA实体: 通过其CRUD存储库: 在Spring MVC中,我有一个控制器,该控制器获取用于更新它的对象: 我知道我可以使用来加载用户findOne,然后更改其名称并使用save…来更新它。但是,如果我有100个字段,而我想更新其中的50个字段,则更改每个值可能会很烦人。 有没有办法告诉类似“ 保