v-bindの使い方。親のデータを子のテンプレートに渡す方法。
Vueのv-bindで、親から子へのデータ受け渡しを整理。
以下のようなvueファイルを見たときに、:keyなどタグの中身(任意で設定した属性)が何を表しているのかを理解できるようになる。
<VrBtn
:key="key"
:disabled="disabled"
:command="command"
/>
export default {
props: {
value: { type: Boolean },
disabled: { type: Boolean, default: false },
command: { type: Object, required: true },
},
}
データ受け渡しの流れ
データ受け渡しの流れは4steps。
属性に変数を入れて、その属性を親と子で受けわたす。
親:①子に渡すデータを定義
↓
親:②子のテンプレートタグに属性と変数を記述
↓
子:③propsで受け取る属性を定義
↓
子:④属性を指定してデータ呼び出し
▼注意点
・親から渡すデータは変数。
┗ ダブルクオテーションで囲むがテキストではない。
┗ :属性名="変数名"
の形で記述。属性を子に渡す。
┗ : は v-bind: の省略形
・子のpropsではデータの型などを指定可能
┗ String:文字列、Boolean:真偽値
┗ required: true データの必要性
┗ default: false/true 真偽値のデフォルト設定
データの受け渡し例
・使うファイルは2つ
親:parent.vue
子:TmpBtn.vue (vuetifyでボタンを表示)
・実現したいこと
親で定義したデータを子のテンプレート内で呼び出す。
<template>
<v-app>
<TmpBtn
<!--②子のテンプレートタグに属性と変数を記述-->
:bind="text"
/>
</v-app>
</template>
<script>
import TmpBtn from "./TmpBtn"
export default {
name: "Parent",
components:{
TmpBtn
},
data(){
return{
//①子に渡すデータを定義
text:"Text form Parent"
}
}
}
</script>
<template>
<v-btn
width="20%"
elevation="2"
rounded
>
<!--④属性を指定してデータ呼び出し-->
{{bind}}
</v-btn>
</template>
<script>
export default {
props:{
//③propsで受け取る属性を定義
bind: {type:String},
}
}
</script>
子のテンプレートを表示したときに、無事、親のデータを受け渡すことができた。
まとめ
以下のような記述を見たら、親から子にデータを渡していることがわかる。
<VrBtn
:key="key"
:disabled="disabled"
:command="command"
/>
propsがあれば、子のテンプレートで親からデータを受け取っているなということがわかる。
export default {
props: {
value: { type: Boolean },
disabled: { type: Boolean, default: false },
command: { type: Object, required: true },
},
}
Author And Source
この問題について(v-bindの使い方。親のデータを子のテンプレートに渡す方法。), 我々は、より多くの情報をここで見つけました https://qiita.com/shizen-shin/items/e13d8ce9e0ae854e2f85著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .