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

如何从状态访问未装载的状态

仲孙温文
2023-03-14

我想在状态尚未装入时访问状态的属性。

class App extends React.Component{
    constructor(props){
    super(props)
    this.state = {
       test: 2,
       score: test * 2
    }
}

我想做评分4,但得到以下错误:

P. S得分:this.state.test也不起作用。

共有2个答案

韩梓
2023-03-14

一种方法是在设置状态之前定义变量,然后使用它:

constructor(props) {
  super(props);
  const test = 2;
  this.state = {
    test,
    score: test * 2
  };
}
杨曜瑞
2023-03-14

您处于构造函数中,因此可以在不使用.setState()的情况下更新状态,并且不会产生任何后果,如下所示:

constructor(props) {
  super(props);
  this.state = {
    test: 2,
  };
  this.state.score = this.state.test * 2;
}
 类似资料:
  • 问题内容: 我想使用React.js制作一个应用程序。我希望它可以轻松地从外部进行自定义(例如,通过编写用户脚本)。我尝试使用的想法是在根元素状态(如或)中创建一些特殊的属性,以便插件开发人员可以在此处添加一些内容。我的问题是:这是否是一个好方法,是否有Right Way™实现与我的目标相似的目标,最后,插件开发人员将如何使用这些道具? 问题答案: 一种选择是可观察的。基本上,它是一个对象,您可以

  • 我有一个组件反应本机: 最后一行是将在新位置调用的回调方法。 通过该方法,我无法访问或 如何从回调函数更新状态?

  • 问题内容: 我有一个化简器,为了计算新状态,我需要操作中的数据以及该化简器未管理的部分状态数据。具体来说,在下面将显示的减速器中,我需要访问该字段。 initialState.js: FormsReducer.js: index.js(根减速器): 如何访问此字段? 问题答案: 我将为此使用thunk,这是一个示例: 基本上,您会获得操作所需的所有数据,然后可以将该数据发送到减速器。

  • 问题内容: 我有以下结构: -包含多个FieldEditor- 编辑表单的字段并在其状态下保存有关该字段的各种值 在FormEditor中单击按钮时,我希望能够从所有组件中收集有关字段的信息,处于其状态的信息,并将其全部包含在FormEditor中。 我考虑过将有关字段信息的信息存储在的状态之外,而是将其置于的状态。但是,这将需要在组件的每个组件发生更改时侦听它们并以其状态存储其信息。 我不能只访

  • 我有以下结构: -保存FieldEditor的多个实例-编辑表单的字段,并在其状态下保存有关该字段的各种值 当单击FormEditor中的按钮时,我希望能够从所有组件中收集有关字段的信息,处于其状态的信息,并将其全部包含在FormEditor中。 我考虑将有关字段的信息存储在的状态之外,并将其置于的状态。但是,这将需要在其组件更改并将其信息存储在其状态时侦听它们。 我不能直接进入儿童状态吗?理想吗

  • RichAsyncFunction的Flink文档说明: 尚不支持RuntimeContext中与状态相关的API,因为在访问工作线程中的状态时,键可能会发生更改。 的文档在这里。