回答編集履歴
9
テキスト修正
answer
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
|
10
10
|
```javascript
|
11
11
|
this.setState({
|
12
|
-
|
12
|
+
position: this.state.position.map(obj => name in obj ? { [name]: value } : obj)
|
13
13
|
});
|
14
14
|
```
|
15
15
|
|
8
テキスト修正
answer
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
`this.state.position` を変更するトリガーとなるボタンやリンクなど、何らかのUIがクリック(あるいはReact Native であればタップ)されたとき、
|
4
4
|
|
5
5
|
- 変数`name` に、 `"tokyo"` や `"beijing"` などの地名が入り、
|
6
|
-
- 変数`value` に、変更後の値
|
6
|
+
- 変数`value` に、変更後の値が入っている
|
7
7
|
|
8
8
|
ものとします。この場合、以下のように `setState` することで、該当要素のみを新しいオブジェクトに変更することができます。
|
9
9
|
|
7
テキスト修正
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
こんにちは
|
2
2
|
|
3
|
-
`
|
3
|
+
`this.state.position` を変更するトリガーとなるボタンやリンクなど、何らかのUIがクリック(あるいはReact Native であればタップ)されたとき、
|
4
4
|
|
5
5
|
- 変数`name` に、 `"tokyo"` や `"beijing"` などの地名が入り、
|
6
6
|
- 変数`value` に、変更後の値を作成する
|
6
テキスト修正
answer
CHANGED
@@ -2,10 +2,10 @@
|
|
2
2
|
|
3
3
|
`setState` のトリガーとなる、何らかのUI部品(ボタンやリンクなど)がクリック、あるいはReact Native であればタップされたとき、
|
4
4
|
|
5
|
-
- 変数`name` に、 `"tokyo"` や `"beijing"` などの地名が入
|
5
|
+
- 変数`name` に、 `"tokyo"` や `"beijing"` などの地名が入り、
|
6
|
-
- 変数`value` に変更後の値を作成する
|
6
|
+
- 変数`value` に、変更後の値を作成する
|
7
7
|
|
8
|
-
この場合、以下のように `setState` することで、該当要素のみを新しいオブジェクトに変更することができます。
|
8
|
+
ものとします。この場合、以下のように `setState` することで、該当要素のみを新しいオブジェクトに変更することができます。
|
9
9
|
|
10
10
|
```javascript
|
11
11
|
this.setState({
|
5
テキスト修正
answer
CHANGED
@@ -17,10 +17,12 @@
|
|
17
17
|
|
18
18
|
- **動作確認用 CodePen: **[https://codepen.io/jun68ykt/pen/KKKqyzq](https://codepen.io/jun68ykt/pen/KKKqyzq)
|
19
19
|
|
20
|
-
上記のサンプルでは、
|
20
|
+
上記のサンプルでは、動作確認のため、
|
21
21
|
|
22
|
+
- `this.state.position` に要素を追加しました。
|
23
|
+
|
22
|
-
- `this.state.
|
24
|
+
- `this.state.position`の内容をJSONにして表示します。
|
25
|
+
|
26
|
+
- ボタンをクリックすると、 `this.state.position` に含まれる該当のオブジェクトが、乱数を元に作成された値を持つ新たなオブジェクトに変更されます。
|
23
27
|
|
24
|
-
- ボタンをクリックすると、 `this.state.potion` の中の該当オブジェクトが、乱数を元に作成された値を持つ新たなオブジェクトに変更されます。
|
25
|
-
|
26
28
|
以上、参考になれば幸いです。
|
4
テキスト修正
answer
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
- 変数`name` に、 `"tokyo"` や `"beijing"` などの地名が入ってくるものとし、
|
6
6
|
- 変数`value` に変更後の値を作成するものとします。
|
7
7
|
|
8
|
-
この場合、以下のように `setState` することで、該当要素の
|
8
|
+
この場合、以下のように `setState` することで、該当要素のみを新しいオブジェクトに変更することができます。
|
9
9
|
|
10
10
|
```javascript
|
11
11
|
this.setState({
|
@@ -17,6 +17,10 @@
|
|
17
17
|
|
18
18
|
- **動作確認用 CodePen: **[https://codepen.io/jun68ykt/pen/KKKqyzq](https://codepen.io/jun68ykt/pen/KKKqyzq)
|
19
19
|
|
20
|
-
|
20
|
+
上記のサンプルでは、
|
21
21
|
|
22
|
+
- `this.state.potion`の内容をJSONにして表示します。
|
23
|
+
|
24
|
+
- ボタンをクリックすると、 `this.state.potion` の中の該当オブジェクトが、乱数を元に作成された値を持つ新たなオブジェクトに変更されます。
|
25
|
+
|
22
26
|
以上、参考になれば幸いです。
|
3
テキスト修正
answer
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
- 変数`name` に、 `"tokyo"` や `"beijing"` などの地名が入ってくるものとし、
|
6
6
|
- 変数`value` に変更後の値を作成するものとします。
|
7
7
|
|
8
|
-
この場合、以下のように `setState` することで、
|
8
|
+
この場合、以下のように `setState` することで、該当要素の値が変更されます。
|
9
9
|
|
10
10
|
```javascript
|
11
11
|
this.setState({
|
2
テキスト修正
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
こんにちは
|
2
2
|
|
3
|
-
`setState` のトリガーとなる、何らかのUI(ボタンやリンクなど)がクリックされたとき、
|
3
|
+
`setState` のトリガーとなる、何らかのUI部品(ボタンやリンクなど)がクリック、あるいはReact Native であればタップされたとき、
|
4
4
|
|
5
5
|
- 変数`name` に、 `"tokyo"` や `"beijing"` などの地名が入ってくるものとし、
|
6
6
|
- 変数`value` に変更後の値を作成するものとします。
|
@@ -13,8 +13,10 @@
|
|
13
13
|
});
|
14
14
|
```
|
15
15
|
|
16
|
-
以下は、上記を動作確認するサンプルです。
|
16
|
+
以下は、上記を動作確認するサンプルです。
|
17
17
|
|
18
18
|
- **動作確認用 CodePen: **[https://codepen.io/jun68ykt/pen/KKKqyzq](https://codepen.io/jun68ykt/pen/KKKqyzq)
|
19
19
|
|
20
|
+
ボタンをクリックすると、 `this.state.potion` の中の該当オブジェクトの内容が、乱数を元に作成された値に変更されることを確認できます。
|
21
|
+
|
20
22
|
以上、参考になれば幸いです。
|
1
テキスト修正
answer
CHANGED
@@ -4,18 +4,17 @@
|
|
4
4
|
|
5
5
|
- 変数`name` に、 `"tokyo"` や `"beijing"` などの地名が入ってくるものとし、
|
6
6
|
- 変数`value` に変更後の値を作成するものとします。
|
7
|
-
- なお、`this.state.position` の要素は、エントリ(キーと値の組)を一つだけ持つオブジェクトで、そのエントリの値のほうは、`1960` や `2002` のような整数値であることを前提とします。
|
8
7
|
|
9
8
|
この場合、以下のように `setState` することで、当該要素の値が変更されます。
|
10
9
|
|
11
10
|
```javascript
|
12
11
|
this.setState({
|
13
|
-
position: this.state.position.map(e =>
|
12
|
+
position: this.state.position.map(e => name in e ? { [name]: value } : e )
|
14
13
|
});
|
15
14
|
```
|
16
15
|
|
17
16
|
以下は、上記を動作確認するサンプルです。ボタンをクリックすると、 `this.state.potion` の中の該当オブジェクトの内容が変更されることを確認できます。
|
18
17
|
|
19
|
-
- **動作確認用 CodePen: **[https://codepen.io/jun68ykt/pen/
|
18
|
+
- **動作確認用 CodePen: **[https://codepen.io/jun68ykt/pen/KKKqyzq](https://codepen.io/jun68ykt/pen/KKKqyzq)
|
20
19
|
|
21
20
|
以上、参考になれば幸いです。
|