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

質問編集履歴

1

質問を完結に

2019/01/08 02:54

投稿

yta55
yta55

スコア8

title CHANGED
File without changes
body CHANGED
@@ -1,9 +1,8 @@
1
1
  以前Chart.jsでグラフを表示する処理をpromiseで処理していく順番で追加の質問です。
2
- ajaxで通信後showData1→showData2→changeFlgと処理してほしいのですがajaxの通信成功時の処理より前にchangeFlgが走ってしまいます。
2
+ ajaxで通信後showData1→showData2と処理してほしいのですがajaxの通信成功時の処理より前にshowData2(flg)が走ってしまいます。
3
- .then()は上から順番に解決していくわけでは無いのでしょうか?showData1、showData2がpromiseで非同期なため先にchangeFlgが走ってしまうのでしょうか?
3
+ .then()は上から順番に解決していくわけでは無いのでしょうか?
4
4
 
5
5
 
6
-
7
6
  バージョンは
8
7
 
9
8
  Chart.js Version: 2.7.3
@@ -50,11 +49,8 @@
50
49
  showData1
51
50
  )
52
51
  .then(
53
- showData2
52
+ showData2(flg)//←ここが最初に実行されてしまう
54
53
  )
55
- .then(
56
- changeFlg(true)//←ここが最初に実行されてしまう
57
- )
58
54
 
59
55
  let showData1= () =>{
60
56
  let chart ;
@@ -65,16 +61,13 @@
65
61
  };
66
62
 
67
63
 
68
- let showData2 = () =>{
64
+ let showData2 = (flg) =>{
65
+ flg = true;
69
66
  let chart ;
70
67
  return new Promise(() => {
71
68
  chart = new Chart(canvasContext, options);//タブBのcanvasにグラフ表示(詳細省略)
72
69
  resolve();
73
70
  });
74
71
  };
75
-
76
- let changeFlg = (boolean) => {
77
- flg = boolean;
78
- };
79
72
  };
80
73
  ```