回答編集履歴

1

テキスト修正

2020/01/12 05:41

投稿

jun68ykt
jun68ykt

スコア9058

test CHANGED
@@ -19,3 +19,45 @@
19
19
  <button onClick={send} disabled={forms.some(ok => !ok)}>
20
20
 
21
21
  ```
22
+
23
+
24
+
25
+
26
+
27
+ ## 追記
28
+
29
+
30
+
31
+ 配列`forms`の先頭要素を `false` に変更するように`setForms`している行が、
32
+
33
+ ### 修正前
34
+
35
+ ```javascript
36
+
37
+ setForms((forms[0] = false));
38
+
39
+ ```
40
+
41
+ となっていますが、これだと、setForms が実行された後の、次の forms の値が `false` になってしまい、配列にならなくなってしまい、そのために
42
+
43
+
44
+
45
+ > "TypeError forms.some is not a function"というエラーメッセージが表示されました。
46
+
47
+
48
+
49
+ ということになります。setForms に与える引数は、3個のboolean値を要素とする配列を渡す必要があります。ですので、上記を以下のように修正します。
50
+
51
+
52
+
53
+ ### 修正後
54
+
55
+ ```jsx
56
+
57
+ setForms([ false, forms[1], forms[2] ]);
58
+
59
+ ```
60
+
61
+
62
+
63
+ 上記を含めて、`setForms((forms[`__i__`] = `__true or false__`));` という書き方をしている行は、全部で6箇所ありますが、上記の他の5箇所についても(__全く同じ、ではなく__)**同様の**修正をする必要があります。