回答編集履歴
2
ロジックミスの修正
test
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
## 間違えました。
|
2
|
+
|
3
|
+
下記の案のように`image.addEventListener('load', this.handleOnLoad(image));`としてしまうと、`load`時に`this.handleOnLoad(image)`が呼ばれるのではなく、その場で`this.handleOnLoad(image)` を実行した値が引数として渡されてしまうので誤りでした。失礼しました。
|
4
|
+
|
5
|
+
|
6
|
+
|
1
7
|
## 解決案
|
2
8
|
|
3
9
|
イベントハンドラ部分を別途`methods`の1つとして定義することで問題を回避できそうです。
|
@@ -5,8 +11,6 @@
|
|
5
11
|
例えば、`methods`部分を下記のように実装します。
|
6
12
|
|
7
13
|
|
8
|
-
|
9
|
-
```Javascript
|
10
14
|
|
11
15
|
getWidthAndHeight() {
|
12
16
|
|
@@ -38,8 +42,6 @@
|
|
38
42
|
|
39
43
|
}
|
40
44
|
|
41
|
-
```
|
42
|
-
|
43
45
|
|
44
46
|
|
45
47
|
## 解説
|
1
誤字修正
test
CHANGED
@@ -56,7 +56,7 @@
|
|
56
56
|
|
57
57
|
また`this`はVueコンポーネントの中であまりにも多用するため勘違いしそうになりますが、必ずしもVueコンポーネントで定義した`data`や`method`がある場所を参照するものではありません。`this`が何を指すかについて解説すると大変パターンが多くなるので気になれば調べてみてください。
|
58
58
|
|
59
|
-
izayaさんが実装している`addEventlistener`の第2引数に設定している`function`内にある`this`も期待した所を参照できていません。ここでの`this`はおそらく`image`を指しています。`function`内で`console.log(this)`する
|
59
|
+
izayaさんが実装している`addEventlistener`の第2引数に設定している`function`内にある`this`も期待した所を参照できていません。ここでの`this`はおそらく`image`を指しています。`function`内で`console.log(this)`することでそれを確かめることができます。
|
60
60
|
|
61
61
|
|
62
62
|
|