# 速習Vue.js 速習シリーズ ## Metadata * Author: [山田祥寛](https://www.amazon.comundefined) * ASIN: B07BS62Z94 * Reference: https://www.amazon.com/dp/B07BS62Z94 * [Kindle link](kindle://book?action=open&asin=B07BS62Z94) ## Highlights el:Vue.jsを適用する要素 data:データオブジェクト — location: [222](kindle://book?action=open&asin=B07BS62Z94&location=222) ^ref-20839 --- が、{{...}}には任意のJavaScript式を表すことも可能 — location: [234](kindle://book?action=open&asin=B07BS62Z94&location=234) ^ref-51901 --- Vue.jsでは、これらの組み込みオブジェクトをMustache式でも利用できるよう、あらかじめ登録しているからです(よって、Vue.jsが登録していない自前のオブジェクトに、{{...}}からアクセスすることはできません)。 — location: [238](kindle://book?action=open&asin=B07BS62Z94&location=238) ^ref-33772 --- {{...}}式を無効化する - v-pre — location: [252](kindle://book?action=open&asin=B07BS62Z94&location=252) ^ref-63850 --- 文字列をHTMLとして埋め込む - v-html — location: [260](kindle://book?action=open&asin=B07BS62Z94&location=260) ^ref-53257 --- 属性に対して式の値を埋め込むのに{{...}}は利用できません。たとえば、以下のコードは正しく動作しません。 <a href="{{ url }}">サポートサイト</a — location: [288](kindle://book?action=open&asin=B07BS62Z94&location=288) ^ref-64088 --- 「v-bind:属性名="値"」 — location: [300](kindle://book?action=open&asin=B07BS62Z94&location=300) ^ref-41781 --- なお、v-bindはよく利用する、という理由から、省略構文も用意されています。リストの太字部分は、以下のように表しても同じ意味です。 <a :href ="url">サポートサイト</a — location: [305](kindle://book?action=open&asin=B07BS62Z94&location=305) ^ref-51875 --- // 演算した結果を取得する算出プロパティ  computed: {   localEmail: function () {    return this.email.split('@')[0].toLowerCase();   } — location: [332](kindle://book?action=open&asin=B07BS62Z94&location=332) ^ref-48717 --- 算出プロパティとは、言うなれば、既存のプロパティを演算(算出)した結果を取得するためのゲッター(getter)です。computedパラメーター配下に「プロパティ名: 関数」の形式で指定します(もちろん、複数の算出プロパティを列挙しても構いません)。 — location: [337](kindle://book?action=open&asin=B07BS62Z94&location=337) ^ref-26665 --- メソッドが再描画(=この場合であれば現在日時の書替)に際して常に評価されるのに対して、算出プロパティはそれが依存するプロパティ(いわゆる「this.~」で表される値)が変更された場合にのみ評価される — location: [388](kindle://book?action=open&asin=B07BS62Z94&location=388) ^ref-21450 --- v-on:イベント名="..." — location: [413](kindle://book?action=open&asin=B07BS62Z94&location=413) ^ref-62178 --- v-onの省略構文  v-bindと並んで、v-onはよく利用することから、省略構文が用意されています。先ほどのevent.htmlを省略構文で書き換えると、以下のようになります。 <button @click="onclick">クリック</button — location: [426](kindle://book?action=open&asin=B07BS62Z94&location=426) ^ref-50301 --- 式の真偽に応じて表示/非表示を切り替える - v-if — location: [875](kindle://book?action=open&asin=B07BS62Z94&location=875) ^ref-61223 --- 複数の分岐を表現する - v-else-if — location: [909](kindle://book?action=open&asin=B07BS62Z94&location=909) ^ref-29568 --- 異なる要素のセットを繰り返し出力する - template要素 — location: [1074](kindle://book?action=open&asin=B07BS62Z94&location=1074) ^ref-22854 --- 属性に値をバインドする - v-bind — location: [1154](kindle://book?action=open&asin=B07BS62Z94&location=1154) ^ref-41994 --- 値を一度だけバインドする - v-once — location: [1193](kindle://book?action=open&asin=B07BS62Z94&location=1193) ^ref-12062 --- 要素にスタイルプロパティを設定する - v-bind:style — location: [1211](kindle://book?action=open&asin=B07BS62Z94&location=1211) ^ref-26942 --- 要素にスタイルクラスを設定する - v-bind:class — location: [1274](kindle://book?action=open&asin=B07BS62Z94&location=1274) ^ref-2917 --- 式による画面のチラツキを防ぐ - v-cloak — location: [1328](kindle://book?action=open&asin=B07BS62Z94&location=1328) ^ref-15061 --- [構文]componentメソッド Vue.component( id, def)  id:コンポーネントの名前  def:コンポーネントの定義情報 — location: [1366](kindle://book?action=open&asin=B07BS62Z94&location=1366) ^ref-56872 --- コンポーネントでのdataパラメーターは 関数として指定 しなければならない点に注意してください。関数は、プロパティ群(オブジェクト)を返すようにします。 — location: [1466](kindle://book?action=open&asin=B07BS62Z94&location=1466) ^ref-55871 --- ルール名 概要 type データ型(String、Number、Boolean、Function、Object、Array、Symbolのいずれか) required プロパティが必須か default 値が指定されなかった場合の既定値 validator カスタムの検証関数 — location: [1480](kindle://book?action=open&asin=B07BS62Z94&location=1480) ^ref-62776 --- プロパティが複数の型を取りうる場合には(たとえばNumberかStringのように)型名を配列として渡してください。「yourName: [ String, Number ]」のように、です。 — location: [1494](kindle://book?action=open&asin=B07BS62Z94&location=1494) ^ref-41558 --- defaultパラメーター(既定値)に配列/オブジェクトを指定する場合には、既定値そのものではなく、既定値を返す関数を渡します。 data: {  type: Object,  default: function() { — location: [1495](kindle://book?action=open&asin=B07BS62Z94&location=1495) ^ref-52403 --- (1)ディレクティブを定義するのはVue.directiveメソッド — location: [1592](kindle://book?action=open&asin=B07BS62Z94&location=1592) ^ref-33683 --- directive( name, def)  name:ディレクティブの名前  def:動作の定義 — location: [1594](kindle://book?action=open&asin=B07BS62Z94&location=1594) ^ref-22726 --- bind: — location: [1599](kindle://book?action=open&asin=B07BS62Z94&location=1599) ^ref-50917 --- update: — location: [1600](kindle://book?action=open&asin=B07BS62Z94&location=1600) ^ref-27596 --- componentUpdated: — location: [1601](kindle://book?action=open&asin=B07BS62Z94&location=1601) ^ref-59656 --- unbind: — location: [1601](kindle://book?action=open&asin=B07BS62Z94&location=1601) ^ref-23497 --- el: — location: [1605](kindle://book?action=open&asin=B07BS62Z94&location=1605) ^ref-36889 --- binding: — location: [1605](kindle://book?action=open&asin=B07BS62Z94&location=1605) ^ref-57381 --- vnode: — location: [1606](kindle://book?action=open&asin=B07BS62Z94&location=1606) ^ref-50277 --- oldVnode: — location: [1607](kindle://book?action=open&asin=B07BS62Z94&location=1607) ^ref-21157 --- プラグインを定義するには、「プラグイン名.install」という静的メソッドを用意するだけです( — location: [1721](kindle://book?action=open&asin=B07BS62Z94&location=1721) ^ref-45692 --- filter( name, def)  name:フィルター名  def:フィルターの挙動 — location: [1727](kindle://book?action=open&asin=B07BS62Z94&location=1727) ^ref-6009 ---