这篇终於要开始学习指令,先从v-bind
开始介绍,单纯用JavaScript
来控制的属性,需要写蛮多的程序码,只要使用Vue
的指令会省略很多,以下开始实作吧!
1.绑定Style
定义data
内style
的资料,用资料来控制画面样式:
const vm = Vue.createApp({
data() {
return {
text: 'Hello Vue!!',
style: {
color: "#0095C0",
background: "#000",
}
}
}
}).mount('#app');
<div id="app">
<div :style="style">{{ text }}</div>
</div>
以上用物件格式写到style
里面,如果用阵列格式可以改成以下:
const vm = Vue.createApp({
data() {
return {
text: 'Hello Vue!!',
red: {
color:"#0095C0",
},
blackbBg: {
background: "#000",
}
}
}
}).mount('#app');
<div id="app">
<div :style="[red,black]">{{ text }}</div>
</div>
2.绑定Class
需要动态绑动Class
时,可以 { } 大括号撰写判断式,而动态的关键,就是data
里isAcrive
的值:
const vm = Vue.createApp({
data() {
return {
text: 'Hello Vue!!',
isAcrive: true,
}
}
}).mount('#app');
data
建立一个isAcrive
变数,来决定是否要套用ClassName
。
<div id="app">
<div class="bgblue" :class="{active: isAcrive}">{{ text }}</div>
</div>
v-bild:class="{'要绑定的className': 判断式}"}
,data
的isAcrive
如果是true
就套用,如果是false
就不套用。
使用三元运算子做更多变化
:
const vm = Vue.createApp({
data() {
return {
text: 'Hello Vue!!',
isAcrive: true,
}
}
}).mount('#app');
沿用上一个JavaScript。
<div id="app">
<div class="active"
:class="[ isAcrive? 'bgblue' : 'bgred' ]"
@click="isAcrive = !isAcrive">{{ text }}
</div>
</div>
v-bind:class="[判断式? '结果为true的 Class': '结果为false的 Class']"
,利用点击事件达到控制data
里的isAcrive
值,从而改变className
。
v-biud
除了可以绑定style
、class
,还有很多标签属性可以做绑定,像是常见的id
,图片的src
,连结的href
等DOM
都可以透过v-biud
来达到动态的效果,以上有用到 :
都是v-biud
的缩写,是v-bind
绑定後的属性。
Vue.js 的黑魔法:指令
Vue官网
Vue笔记
v-bind动态绑定
<<: 【Day08】条件渲染 Conditional Rendering
第 35 天:制造 Deploy to Heroku 按钮 我打开信封,有张明信片在里面。明信片封面...
从昨天的文章中,我们获得了数种进行绿野仙踪实验的方法 在今日的文章,假定我们已经获取用户的反馈。并...
Golang goroutine 我自己理解goroutine 就很类似其他语言的thread[备注...
网页世界是由什麽组成? 上一篇有讲到网页三兄弟,其中有一个老大哥负责撑起这个世界,那就是 HTML...
接续昨天的练习:https://ithelp.ithome.com.tw/articles/1026...