質問編集履歴

2

注釈追記

2017/11/29 11:48

投稿

rontec
rontec

スコア169

test CHANGED
File without changes
test CHANGED
@@ -141,3 +141,5 @@
141
141
 
142
142
 
143
143
  ※テキストエディタにぱぱっと書いたものなので、書式のミスがあるかもしれません。
144
+
145
+ ※なお、以上のソースは「thisにプロパティとして紐付け、渡したい先のメソッドでthisから参照する」のイメージです。

1

ソースイメージ追記

2017/11/29 11:48

投稿

rontec
rontec

スコア169

test CHANGED
File without changes
test CHANGED
@@ -59,3 +59,85 @@
59
59
 
60
60
 
61
61
  なお、本プロジェクトは残念ながらフレームワークの導入はしておりません。
62
+
63
+
64
+
65
+ ---
66
+
67
+
68
+
69
+ 現物のソースコードは投稿出来ないのですが、以下のようなイメージです。
70
+
71
+
72
+
73
+ ```javascript
74
+
75
+ class Page {
76
+
77
+ constructor() {
78
+
79
+ // もろもろconstructorでプロパティ定義。
80
+
81
+ this.id = null;
82
+
83
+ this.name = null;
84
+
85
+ }
86
+
87
+
88
+
89
+ controller() {
90
+
91
+ this.getData(() => {
92
+
93
+ // 取得したデータの表示処理
94
+
95
+ draw();
96
+
97
+ });
98
+
99
+ }
100
+
101
+
102
+
103
+ getData(callback) {
104
+
105
+ // Ajaxでサーバーからデータ取得
106
+
107
+ const data = ~;
108
+
109
+ // 非同期についてはさておき、ajax通信後に以下が実行されるとします。
110
+
111
+ // 取得したデータをthisに紐付け
112
+
113
+ this.id = data.id;
114
+
115
+ this.name = data.name;
116
+
117
+ callback();
118
+
119
+ }
120
+
121
+
122
+
123
+ draw() {
124
+
125
+ // this.idとthis.nameを画面描画
126
+
127
+ // 引数はなく、thisから参照します。
128
+
129
+ }
130
+
131
+ }
132
+
133
+
134
+
135
+ const page = new Page();
136
+
137
+ page.controller();
138
+
139
+ ```
140
+
141
+
142
+
143
+ ※テキストエディタにぱぱっと書いたものなので、書式のミスがあるかもしれません。