当前位置: 首页 > 知识库问答 >
问题:

一个对象的setState-React Native

朱梓
2023-03-14

我举了一个例子:

this.state = {
      lang1: { name: 'Anglais', code: "en" },
      lang2: { name: 'Français', code: "fr" }
};

如何设置lang1.name?当我这样做时,它不起作用:

this.setState({ lang1.name: "myExample" });

我是新来的,我不太明白

共有3个答案

浦墨竹
2023-03-14

您可以这样做:

this.setState((previousState) => {
  const lang1 = previousState.lang1
  return {...lang1, name: 'myExample'}
})
元望
2023-03-14
this.setState({
  lang1: {
    name: "myExample",
    code: this.state.lang1.code
  }
});
端木淇
2023-03-14

你可以这么做。。。只需添加现有密钥,然后添加/覆盖新密钥

this.setState({
	lang1:{
		...this.state.lang1,
		name: "myExample"
	}
})
 类似资料:
  • 我对React Native是新手,不太理解对象的初始状态的概念,并且当我有多个属性要设置时更新状态。 错误(编辑#2): 应用程序。js 当我收到数据时更新用户:

  • 问题内容: 因此,我已经进行了一段时间的尝试,并认为最好重构我的代码,以便将状态设置为对象数组。我想做的是单击按钮时增加一个数字。 我在组件中有一个回调函数,可触发一个函数来更新状态…但是,我很难将对象内的键值作为目标。 我的初始状态如下: 我正在尝试锁定键,但不知道如何操作。我的函数传递了一个键,以便可以将数组中的索引作为目标,但是当我尝试执行以下操作时:由于意外的令牌,它会引发错误。 我曾尝试

  • 所以我在这方面做了一段时间,觉得最好重构我的代码,以便将状态设置为一个对象数组。我要做的是增加一个点击按钮的数字。 我在这里尝试过类似于这个线程的东西,但是我不断得到错误。 我可以编写什么样的函数来设置我想要目标的对象中的键的状态?

  • 本文向大家介绍为什么建议setState的第一个参数是callback而不是一个对象呢?相关面试题,主要包含被问及为什么建议setState的第一个参数是callback而不是一个对象呢?时的应答技巧和注意事项,需要的朋友参考一下 React 为了优化性能,有可能会将多个 setState() 调用合并为一次更新。 因为this.props和this.state 可能是异步更新的,你不能依赖他们的

  • 我有一个有三个字段的表单,HandleChange方法在第一个字段(DateOfBirth)中工作,但在(Id1)和(Id2)字段中不工作。 由于某些原因,当我尝试更改(Id1 | | Id2)字段的值时,setState返回此错误。 “组件正在将文本类型的受控输入更改为非受控。输入元素不应从受控切换为非受控(反之亦然)。在组件的使用寿命内,决定使用受控还是非受控输入元素”

  • 是否可以使用更新对象的属性? 类似于: 我试过: 还有这个: 第一个会导致语法错误,而第二个则什么也不做。有什么想法吗?