質問編集履歴
1
あ
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にかけていると思います。
|