質問するログイン新規登録

質問編集履歴

1

2018/03/14 14:50

投稿

MOTOMUR
MOTOMUR

スコア195

title CHANGED
File without changes
body CHANGED
@@ -45,4 +45,24 @@
45
45
 
46
46
 
47
47
 
48
- このような処理の時に、どのようにうまく記述するのでしょうか?
48
+ このような処理の時に、どのようにうまく記述するのでしょうか?
49
+
50
+ 解決しました。
51
+ ---
52
+ ```
53
+ addDetectionFunc = ( addDetection, subjectID ) => {
54
+ const self = this
55
+ return new Promise(function(resolve) {
56
+ addDetection.forEach(key => {
57
+ var keyWhatDay = key[0]
58
+ var keyWhatTime = key[1]
59
+ self.setState(prevState => {
60
+ const newSchedule = update(prevState.preSchedule, { [keyWhatDay] : { [keyWhatTime] : { STATUS : { $set : true }, ID : { $set : subjectID } } } })
61
+ return {preSchedule: newSchedule}
62
+ })
63
+ })
64
+ resolve()
65
+ })
66
+ }
67
+ ```
68
+ このように一旦prescheduleにsetStateして、promise thenのなかでもう一度本命にsetStateすると言う回りくどい形にはなりましたが、これが一番immutableにかけていると思います。