API
詳しくはNuxtJSのドキュメント、また基本はVue.jsのドキュメントを参考にしてください。
data
private変数のような物。templateでは{{ 変数名 }}
で表示できる。
computedよりも先に生成されるため、computedの値を取得できない。
computed
引数は使えないので、dataプロパティに用意して使う。
監視できるものはdataプロパティで、computedの値は監視できない。
watchは基本使わず、computedが推奨されている(と書いてあった気がする)
methodとほぼ同じものを作成できる。どのように使い分けるか。
- 依存関係のあるプロパティ に変更があった際に再評価したい
- 意図的にキャッシュしたくない
- methodはアクション時、computedは自動評価
asyncData
サーバーサードでデータを取得して、レンダリングする際に必要。非同期の処理を行える。
コンポーネントがインスタンス化する前に実行されるため、thisを通してコンポーネントのインスタンスにアクセスできない。
また、ページロード時に実行されるので、現状のページパラメータに大して更新はできない??
asyncData の結果は data とマージされる。
次はフォーム入力バインディング