複数の入力から状態配列にデータをプッシュする

ヘルヒーム

私のプログラムはいくつかの入力を生成し、私の状態の配列にデータをプッシュしようとしています

export default class TransmittersTable extends Component {
  constructor() {
    super()
    this.state = {
      axisX: [],
      axisY:[],
      power: [],
    }
  }
  updateAxisX(e) {
    this.setState({
      axisX: this.state.axisX.push(e.target.value)
    })
  }
  updateAxisY(e) {
    this.setState({
      axisY: this.state.axisY.push(e.target.value)
    })
  }
  updateAxisPower(e) {
    this.setState({
      power: this.state.power.push(e.target.value)
    })
  }
  generateTransmittersItems(){
    let transmitters = [];
    for(let i = 0; i < this.props.numberOfTransmitters; i++) {
      transmitters.push(
        <tr>
          <td><input id={i} ref="axisX" type="text" onChange={this.updateAxisX.bind(this)}/></td>
          <td><input id={i} ref="axisY" type="text" onChange={this.updateAxisY.bind(this)}/></td>
          <td><input id={i} ref="power" type="text" onChange={this.updateAxisPower.bind(this)}/></td>
        </tr>
      );
    }
    return transmitters
  }
  componentWillMound(){}
  render() {
    return (
      <table>
        <thead>
          <tr>
            <th>Axis X</th>
            <th>Axis Y</th>
            <th>Power</th>
          </tr>
        </thead>
        <tbody>
          {this.generateTransmittersItems()}
        </tbody>
      </table>
    )
  }
}

入力の最初の行ではすべてが問題ありませんが、別の入力行から同じ状態配列 (例: axisX) に別の値をプッシュしようとすると、コンソールから「this.state.axisX.push is not a function」というエラーが送信されます. 同じ関数を使用して入力から同じ配列により多くの値をプッシュするには、何が間違っていて、何をしなければなりませんか?

We We

問題は反応状態の問題とは関係ないと思います。「プッシュ」メソッドを使用すると、配列は返されませんが、配列の長さが返されます。これが、2 回目に「プッシュ」メソッドを使用するとエラー「this.state.axisX」が発生する理由です。 .push は関数ではありません」。

したがって、状態を変更する必要がある場合は、次のような「concat」メソッドを使用して、戻り値として新しい配列を取得できます。

this.setState({
  axisX: this.state.axisX.concat([e.target.value])
})

var a = ["Hi", "There"];
var b = a.push("Oh");

console.log(b); // get 3, not an array
console.log(a); // ["Hi", "There", "Oh"]

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ng-repeat の複数の入力からの値を AngularJS で配列にプッシュする

分類Dev

ユーザー入力データを$ _SESSION配列に継続的にプッシュしてから取得するにはどうすればよいですか?

分類Dev

JavaScriptを使用して配列からドロップメニューにデータを入力する

分類Dev

状態から配列にマップ関数を使用する

分類Dev

setIntervalからのデータを配列にプッシュする方法

分類Dev

単一の2次元配列から複数のデータグリッドビューにデータを入力する

分類Dev

Rの状態変化から現在の状態を取得するために、データのピボットを解除し、null値を入力します

分類Dev

配列内のSELECTからMySQLデータベースに複数のオプションを挿入するにはどうすればよいですか?

分類Dev

データをRedux状態にプッシュする

分類Dev

Reactは、ある状態配列を別の状態配列にプッシュします

分類Dev

データをプッシュするときにTypeScriptで配列を入力する

分類Dev

フォームの入力からmongoose.modelのオブジェクトの配列に複数の値をプッシュするにはどうすればよいですか?

分類Dev

複数のデータの配列を状態として設定する方法

分類Dev

配列の内容が異なるタイプの場合、どうすれば複数のテーブルビューセクションにデータを入力できますか?

分類Dev

入力値が変更されたときに、複数の入力文字列をスコープ配列にプッシュします(AngularJS)

分類Dev

JavaScript配列から複数の入力を同時に入力する

分類Dev

ハッシュの配列からデータを取得する

分類Dev

配列内の特定の位置にある入力から値をプッシュします

分類Dev

文字列リソースからListFragmentにデータを入力するとクラッシュする

分類Dev

反応でjsonをMobxの配列状態にプッシュする方法

分類Dev

ある配列から別の配列へのデータのプッシュに関する問題

分類Dev

ExtJSは複数のプロキシソースからストアにデータを入力します

分類Dev

配列状態からデータを変更するreactjs

分類Dev

React:複数の入力タイプの状態を管理する方法

分類Dev

値が配列に存在するかどうかを確認し、入力データを更新またはプッシュします

分類Dev

複数の入力の状態を処理し、それらの状態を親から変更するにはどうすればよいですか?

分類Dev

DBからのロード中にロードキャッシュにデータを入力する

分類Dev

ファイルからのjsonデータをハッシュマップに入力します

分類Dev

iOSのselectクエリから配列にデータを入力する

Related 関連記事

  1. 1

    ng-repeat の複数の入力からの値を AngularJS で配列にプッシュする

  2. 2

    ユーザー入力データを$ _SESSION配列に継続的にプッシュしてから取得するにはどうすればよいですか?

  3. 3

    JavaScriptを使用して配列からドロップメニューにデータを入力する

  4. 4

    状態から配列にマップ関数を使用する

  5. 5

    setIntervalからのデータを配列にプッシュする方法

  6. 6

    単一の2次元配列から複数のデータグリッドビューにデータを入力する

  7. 7

    Rの状態変化から現在の状態を取得するために、データのピボットを解除し、null値を入力します

  8. 8

    配列内のSELECTからMySQLデータベースに複数のオプションを挿入するにはどうすればよいですか?

  9. 9

    データをRedux状態にプッシュする

  10. 10

    Reactは、ある状態配列を別の状態配列にプッシュします

  11. 11

    データをプッシュするときにTypeScriptで配列を入力する

  12. 12

    フォームの入力からmongoose.modelのオブジェクトの配列に複数の値をプッシュするにはどうすればよいですか?

  13. 13

    複数のデータの配列を状態として設定する方法

  14. 14

    配列の内容が異なるタイプの場合、どうすれば複数のテーブルビューセクションにデータを入力できますか?

  15. 15

    入力値が変更されたときに、複数の入力文字列をスコープ配列にプッシュします(AngularJS)

  16. 16

    JavaScript配列から複数の入力を同時に入力する

  17. 17

    ハッシュの配列からデータを取得する

  18. 18

    配列内の特定の位置にある入力から値をプッシュします

  19. 19

    文字列リソースからListFragmentにデータを入力するとクラッシュする

  20. 20

    反応でjsonをMobxの配列状態にプッシュする方法

  21. 21

    ある配列から別の配列へのデータのプッシュに関する問題

  22. 22

    ExtJSは複数のプロキシソースからストアにデータを入力します

  23. 23

    配列状態からデータを変更するreactjs

  24. 24

    React:複数の入力タイプの状態を管理する方法

  25. 25

    値が配列に存在するかどうかを確認し、入力データを更新またはプッシュします

  26. 26

    複数の入力の状態を処理し、それらの状態を親から変更するにはどうすればよいですか?

  27. 27

    DBからのロード中にロードキャッシュにデータを入力する

  28. 28

    ファイルからのjsonデータをハッシュマップに入力します

  29. 29

    iOSのselectクエリから配列にデータを入力する

ホットタグ

アーカイブ