最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue.js中對(duì)css的操作(修改)具體方式詳解

 更新時(shí)間:2018年10月30日 14:48:31   作者:譚少居然  
使用v-bind:class或者v-bind:style或者直接通過(guò)操作dom來(lái)對(duì)其樣式進(jìn)行更改;接下來(lái)通過(guò)本文給大家分享Vue.js中對(duì)css的操作(修改)具體方式,感興趣的朋友跟隨小編一起看看吧

使用v-bind:class或者v-bind:style或者直接通過(guò)操作dom來(lái)對(duì)其樣式進(jìn)行更改;

1.v-bind:class || v-bind:style

其中v-bind是指令,: 后面的class 和style是參數(shù),而class之后的指在vue的官方文檔里被稱為'指令預(yù)期值'(這個(gè)不必深究,反正個(gè)人覺(jué)得初學(xué)知道他叫啥名有啥用就好了)同v-bind的大多數(shù)指令(部分特殊指令如V-for除外)一樣,除了可以綁定字符串類型的變量外,還支持一個(gè)單一的js表達(dá)式,也就是說(shuō)v-bind:class的'指令預(yù)期值'除了字符串以外還可以是對(duì)象或者數(shù)組(‘v-bind:'中的v-bind可省略)。

1.1:對(duì)象語(yǔ)法:

通過(guò)對(duì)象來(lái)綁定v-bind:class=“{'css類名':控制是否顯示(true or false)}”

<template>
 <div>
 <div class='mycolor' :class="{'colordisplay':display}"><span>1.1我的對(duì)象更改&&綁定test</span></div>
 </div>
</template>
<script>
 export default {
 name: 'mytest',
 data() {
 return {
 display: true
 }
 },
 mounted() {},
 computed: {},
 methods:{}
 }
</script>
<style>
 .colordisplay {
 display: inline;
 background: red;
 border: 1px solid blue
 }
</style>

如果display為true,那么此時(shí)該部分的class就是 class="mycolor colordisplay",通過(guò)設(shè)置display的值就可以控制colordisplay的顯示

如果要設(shè)置綁定多個(gè)class的話就和正常的對(duì)象鍵值對(duì)一樣中間用逗號(hào)隔開(kāi)就可以了v-bind:class="{'colordisplay':display,'ispay':pay}"

1.2:內(nèi)聯(lián)樣式:

v-bind:style='mycolor'

template

<div :style='mypagestyle'><span>1.2我的樣式內(nèi)聯(lián)更改&&綁定test</span></div>

data

mypagestyle:{color: 'yellow',background:"blue"},

1.3:數(shù)組語(yǔ)法:

也可以通過(guò)數(shù)組來(lái)綁定v-bind:style='[mycolor1,mycolor2]'

<div :style="[myarr,myarrtest]"><span>1.3我的數(shù)組更改&&綁定test</span></div>

 然后設(shè)置返回的數(shù)據(jù)為

myarr:{color: 'white'},
myarrtest:{background:'#000',display:'inline'},

2.計(jì)算屬性

也可以通過(guò)計(jì)算屬性計(jì)算(適用于較為復(fù)雜判斷)樣式

<div class='computed' :class='compuretu'>2.計(jì)算屬性判斷</div>

將計(jì)算屬性的返回值作為類名,通過(guò)判斷serd和slid的值來(lái)控制樣式的顯示與否

 data() {
 return {serd:true,slid:true}
 }, 
 computed: {
 compuretu: function() {
 return {compuretu: this.serd && this.slid}
 }
 }

設(shè)置樣式

.compuretu{color:white;background: red}

3.操作節(jié)點(diǎn)

由于vue本身是虛擬dom如果通過(guò)document來(lái)進(jìn)行節(jié)點(diǎn)樣式更改的時(shí)候有可能會(huì)出現(xiàn)'style' is not definde的錯(cuò)誤,

這個(gè)問(wèn)題的解決方式就必須得對(duì)vue 的理解要求更高一層了,它可以通過(guò)在vue本身的周期mounted函數(shù)里用ref和$refs 來(lái)獲取樣式,來(lái)完成對(duì)其樣式的更改:示例如下:

<template>
<div>
<div style=“color: green;” ref="abc"><span>我的test</span></div>
</div>
</template>
<script>
export default {
name: 'mytest',
data() {
return {}
},
mounted() {console.log(this.$refs.abc.style.cssText)}
}
<script>
<style>
</style>

說(shuō)明:

1.ref被用來(lái)給元素(子組件)注冊(cè)引用信息;

2.vm.$refs 一個(gè)對(duì)象,持有已注冊(cè)過(guò) ref 的所有子組件(或HTML元素);

使用:在 HTML元素 中,添加ref屬性,然后在JS中通過(guò)vm.$refs.屬性來(lái)獲取

上述會(huì)將style的內(nèi)容全部輸出(color: green;)

這樣的話對(duì)其進(jìn)行更改就可以對(duì)相應(yīng)的屬性直接更改(this.$refs.abc.style.color=red

<template>
 <div>
 <div :class='{mycss}'><span>我的單個(gè)class屬性的test</span></div>
 <div class='mycolor' :class="{'colordisplay':display}"><span>1.1我的對(duì)象更改&&綁定test</span></div>
 <div :style='mypagestyle'><span>1.3我的樣式內(nèi)聯(lián)更改&&綁定test</span></div>
 <div :style="[myarr,myarrtest]"><span>1.3我的數(shù)組更改&&綁定test</span></div>
 <div class='computed' :class='compuretu'>2.計(jì)算屬性判斷</div>
 <div style="color: green;" ref="abc"><span>3.我的dom更改test</span></div>
 </div>
</template>
<script>
 export default {
 name: 'mytest',
 data() {
 return {
 serd:true,
 slid:true,
 mycss: {
  color: ''
 },
 mypagestyle:{
  color: 'yellow',
  background:"blue"
 },
 myarr:{
  color: 'white'
 },
 myarrtest:{
  background:'#000',
  display:'inline'
 },
 display: true
 }
 },
 mounted() {  
 console.log(this.$refs.abc.style.cssText)
 this.$refs.abc.style.color = 'red' //修改屬性
 this.$refs.abc.style.background = 'black' //新增屬性
 this.$refs.abc.style.display = 'inline' 
 console.log(111) 
 console.log(this.$refs.abc.style.display) 
 },
 computed: {
 compuretu: function() {
 return {
  compuretu: this.serd && this.slid
 }
 }
 },
 methods:{
 
 }
 }
</script>
<style>
 .mycss {
 color: blue
 }
 
 .colordisplay {
 display: inline;
 background: red;
 border: 1px solid blue
 }
 
 .mycolor {
 color: orange
 }
 
 .computed {
 border: 1px solid yellow
 }
 .compuretu{
 color:white;
 background: red;
 }
</style>

當(dāng)然最后這種方式對(duì)于初入門的朋友來(lái)講可能會(huì)有點(diǎn)理解不透,所以我更建議大家使用前幾種方式

總結(jié)

以上所述是小編給大家介紹的Vue.js中對(duì)css的操作(修改)具體方式詳解,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • WebSocket使用以及在vue如何使用問(wèn)題

    WebSocket使用以及在vue如何使用問(wèn)題

    這篇文章主要介紹了WebSocket使用以及在vue如何使用問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue中循環(huán)請(qǐng)求接口參數(shù)問(wèn)題及解決

    vue中循環(huán)請(qǐng)求接口參數(shù)問(wèn)題及解決

    這篇文章主要介紹了vue中循環(huán)請(qǐng)求接口參數(shù)問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • vue項(xiàng)目打包之后生成一個(gè)可修改IP地址的文件(具體操作)

    vue項(xiàng)目打包之后生成一個(gè)可修改IP地址的文件(具體操作)

    這篇文章主要介紹了vue項(xiàng)目打包之后生成一個(gè)可修改IP地址的文件(具體操作),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03
  • vue關(guān)于this.$refs.tabs.refreshs()刷新組件方式

    vue關(guān)于this.$refs.tabs.refreshs()刷新組件方式

    這篇文章主要介紹了vue關(guān)于this.$refs.tabs.refreshs()刷新組件方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Vite創(chuàng)建Vue3項(xiàng)目及Vue3使用jsx詳解

    Vite創(chuàng)建Vue3項(xiàng)目及Vue3使用jsx詳解

    vite是新一代的前端構(gòu)建工具,下面這篇文章主要給大家介紹了關(guān)于Vite創(chuàng)建Vue3項(xiàng)目以及Vue3使用jsx的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • Vuex的使用及知識(shí)點(diǎn)筆記

    Vuex的使用及知識(shí)點(diǎn)筆記

    這篇文章主要介紹了Vuex的使用及知識(shí)點(diǎn)筆記,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Vue.js中實(shí)現(xiàn)密碼修改及頁(yè)面跳轉(zhuǎn)和刷新的完整指南

    Vue.js中實(shí)現(xiàn)密碼修改及頁(yè)面跳轉(zhuǎn)和刷新的完整指南

    在現(xiàn)代Web應(yīng)用中,用戶賬戶管理是一個(gè)核心功能,其中密碼修改是一個(gè)常見(jiàn)的需求,本文將詳細(xì)介紹如何在Vue.js應(yīng)用中實(shí)現(xiàn)用戶密碼修改功能,并在成功后跳轉(zhuǎn)到登錄頁(yè)面并刷新該頁(yè)面,需要的朋友可以參考下
    2024-12-12
  • vue請(qǐng)求接口并且攜帶token的實(shí)現(xiàn)

    vue請(qǐng)求接口并且攜帶token的實(shí)現(xiàn)

    本文主要介紹了vue請(qǐng)求接口并且攜帶token的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • vue的表單數(shù)據(jù)收集案例之基本指令和自定義指令詳解

    vue的表單數(shù)據(jù)收集案例之基本指令和自定義指令詳解

    收集表單數(shù)據(jù)可以使用這個(gè)v-model實(shí)現(xiàn)這個(gè)數(shù)據(jù)的綁定,但是在有些輸入框中,還需要一些其他的指令搭配這個(gè)v-model指令結(jié)合使用,這篇文章主要介紹了vue的表單數(shù)據(jù)收集,基本指令和自定義指令,需要的朋友可以參考下
    2023-01-01
  • VUE+element-ui文件上傳的示例代碼

    VUE+element-ui文件上傳的示例代碼

    圖片和文件上傳在很多項(xiàng)目中都可以使用的到,本文主要介紹了VUE+element-ui文件上傳的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03

最新評(píng)論

凌云县| 微博| 黄冈市| 浦北县| 海伦市| 金山区| 繁昌县| 曲麻莱县| 乐陵市| 乐山市| 贺州市| 嘉定区| 刚察县| 台南县| 曲沃县| 惠水县| 咸丰县| 安庆市| 英吉沙县| 织金县| 荣成市| 吴桥县| 合山市| 左权县| 南阳市| 新宾| 綦江县| 阳高县| 虞城县| 宜良县| 五台县| 九江县| 云阳县| 玛纳斯县| 仁怀市| 米泉市| 横峰县| 宾川县| 库伦旗| 乌拉特前旗| 留坝县|