亚洲精品亚洲人成在线观看麻豆,在线欧美视频一区,亚洲国产精品一区二区动图,色综合久久丁香婷婷

              當前位置:首頁 > IT技術(shù) > 其他 > 正文

              7. v-bind 綁定Class操作 【對象語法】
              2022-05-31 17:21:39

              因為v-bind可以直接實現(xiàn) 標簽屬性的值動態(tài)化,那么Class作為一個屬性,那么:

              ?

              <style>
              ????????.active{
              ????????????color:red;
              ????????}
              ????</style>
              <script?src="js/vue.js"></script>
              ????<div?id="app">
              ????????<h2?:class="active">不忘初心?,?方得始終?。</h2>
              ????</div>

              <script?>
              ????const?app?=?new?Vue({
              ????????el:"#app",
              ????????data:{
              ????????????active:"active"
              ????????}
              ????})
              </script>

              ?

              如果我這樣寫的話 你可能會罵我 畫蛇添足 多此一舉 *****? s*****b*****當然 這是對的,但是他有一種另外形式來展現(xiàn):

              就是 Class屬性? + v-bind 可以用 對象語法來寫,對象語法 當然是一個{} ,里面是 鍵 - 值 ,值是boolean型的? 如果是 true 的才會把值添加進去。

              例:

              <style>
              ????????.red{
              ????????????color:red;
              ????????}
              ????????.blue{
              ????????????color:?blue;
              ????????}
              ????</style>

              </head>
              <body>
              <script?src="js/vue.js"></script>
              ????<div?id="app">
              ????????<!--?<h2?class="blue">不忘初心?,?方得始終?。</h2>?-->
              ????????<h2?:class="{red:false,blue:true}">不忘初心?,?方得始終?。</h2>
              ????</div>

              <script?>
              ????const?app?=?new?Vue({
              ????????el:"#app",
              ????????data:{
              ????????????red:"red",
              ????????????blue:"blue",
              ????????}
              ????})
              </script>

              ?

              上面的true 和 false 完全可以用變量代替 ,那么進階的寫法就應(yīng)該這樣寫 【我們配個方法 然后實現(xiàn) 點擊按鈕變紅色 再次點擊變藍色】:

              <style>
              ????????.red{
              ????????????color:red;
              ????????}
              ????????.blue{
              ????????????color:?blue;
              ????????}
              ????</style>
              <script?src="js/vue.js"></script>
              ????<div?id="app">
              ????????<!--?<h2?class="blue">不忘初心?,?方得始終?。</h2>?-->
              ????????<h2?:class="{red:boolean,blue:!boolean}">不忘初心?,?方得始終?。</h2>
              ????????<button?@click="not">切換顏色</button>
              ????</div>

              <script?>
              ????const?app?=?new?Vue({
              ????????el:"#app",
              ????????data:{
              ????????????red:"red",
              ????????????blue:"blue",
              ????????????boolean:true
              ????????},
              ????????methods:{
              ????????????not:function?(){
              ????????????????this.boolean?=?!this.boolean;
              ????????????}
              ????????}
              ????})
              </script>

              ?

              所以 非常的方便啊,

              ?

              還有一個特點:

              如果你有多個Class 其中有一個是v-bind綁定的 那么它們兩個Class會合并起來 并不會吧 v-bind綁定的class 覆蓋掉,例如:

              <script?src="js/vue.js"></script>
              ????<div?id="app">
              <!--????????<h2?class="h2?red">不忘初心?,?方得始終?。</h2>-->
              ????????<h2?class="h2"?:class="red">不忘初心?,?方得始終?。</h2>
              ????</div>

              <script?>
              ????const?app?=?new?Vue({
              ????????el:"#app",
              ????????data:{
              ????????????red:"red"
              ????????}
              ????})
              </script>

              ?

              ?

              還有就是 如果你覺得 直接寫對象語法太長的話? 你就直接定義一個方法,然后寫進去即可,v-bind也會自動解析這個函數(shù)的? ,函數(shù)中直接寫 return {xxxx:teue,xxxx:false} 即可??

              例:

              <style>
              ????????.red{
              ????????????color:red;
              ????????}
              ????????.blue{
              ????????????color:?blue;
              ????????}
              ????</style>

              </head>
              <body>
              <script?src="js/vue.js"></script>
              ????<div?id="app">
              <!--???記得加括號?因為這是調(diào)用函數(shù)?不是事件調(diào)用的.?????-->
              ????????<h2?:class="classs()">不忘初心?,?方得始終?。</h2>
              ????</div>

              <script?>
              ????const?app?=?new?Vue({
              ????????el:"#app",
              ????????data:{
              ????????????red:"red"
              ????????},
              ????????methods:{
              ????????????classs:function?(){
              ????????????????return?{red:true,blue:false};
              ????????????}
              ????????}
              ????})
              </script>

              ?

              ?

              ?

              ,還有個數(shù)組語法 下一篇寫

              ?


              作者:??咸瑜???

              本文摘自 :https://blog.51cto.com/u

              開通會員,享受整站包年服務(wù)立即開通 >