回答編集履歴

1

補足

2021/07/28 10:15

投稿

emoyome
emoyome

スコア11

test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- ```
5
+ ```ts
6
6
 
7
7
  ngOnChanges(changes: SimpleChanges): void {
8
8
 
@@ -39,3 +39,45 @@
39
39
  }
40
40
 
41
41
  ```
42
+
43
+
44
+
45
+ または変更検知処理を直接呼び出しても良いかもしれません。
46
+
47
+
48
+
49
+ ```ts
50
+
51
+
52
+
53
+ // 追加
54
+
55
+ constructor(private cd: ChangeDetectorRef) {}
56
+
57
+
58
+
59
+ ngOnChanges(changes: SimpleChanges): void {
60
+
61
+ if (changes['dataSet'].currentValue) {
62
+
63
+ let val = changes['dataSet'].currentValue;
64
+
65
+ // データ更新 ここの処理が重たいからか?
66
+
67
+ for (let i = 0; i < val.hourly.length; i++) {
68
+
69
+ this.indexs[i] = (new Date(val.hourly[i].dt * 1000).getHours().toString());
70
+
71
+ this.datas[i] = +(val.hourly[i].temp - 273.15).toFixed(2);
72
+
73
+ }
74
+
75
+ }
76
+
77
+ // 変更検知を行うために追加
78
+
79
+ this.cd.detectChanges()
80
+
81
+ }
82
+
83
+ ```