91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue.js中class與style的增強綁定如何實現

發布時間:2023-04-20 11:11:15 來源:億速云 閱讀:117 作者:iii 欄目:開發技術

今天小編給大家分享一下Vue.js中class與style的增強綁定如何實現的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

在web前端應用中,操作元素的class列表的內聯樣式style是數據綁定style是數據綁定的一個常見需求,因為它們都是attribute,所有可以用v-bind處理它們,但若樣式復雜,則需要書寫長串的樣式代碼,這樣一來,字符串拼接就比較麻煩。因此,在將v-bind用于class和style時,Vue.js做了專門的增強,表達式結果的類型除了字符串之外,還可以是對象或數組。

一、v-bind綁定class屬性

若想使用類樣式(即以類名定義元素的樣式,類樣式一般以"."號開頭命令),可以通過v-bind指令綁定class屬性實現:

(1)綁定class樣式,字符串寫法

適用于:樣式的類名不確定,需要動態指定

    <div id="root">
         <!-- 綁定class樣式,字符串寫法,適用于:樣式的類名不確定,需要動態指定 -->
        <div class="basic" v-bind:class="moon" @click="doChange">
            {{name}}
        </div>
    </div>
    <script>
        const vm = new Vue({
            el: '#root',
            data: {
                name: "class和style增強綁定",
                moon: "normal"
            },
            methods: {
                doChange() {
                    var arr = ["happy", "sad", "normal"];
                    indexof = Math.floor(Math.random() * 3);
                    this.moon = arr[indexof];
                }
            }
        });
     </script>

css樣式:

        .happy {
            border: 4px solid red;
            background-color: rgba(255, 255, 0, 0.644);
            background: linear-gradient(30deg, yellow, pink, orange);
        }
 
        .sad {
            border: 4px dashed rgb(2, 197, 2);
            background-color: gray;
        }
 
        .normal {
            background-color: skyblue;
        }

執行結果:

Vue.js中class與style的增強綁定如何實現

(2)綁定class樣式,數組寫法

適用于:要綁定的樣式個數不確定,名字也不確定

    <div id="root">
        <!-- 綁定class樣式,數組寫法,適用于:要綁定的樣式個數不確定,名字也不確定 -->
        <div class="basic" v-bind:class="classarr">
            {{name}}
        </div>
    </div>
    <script>
        const vm = new Vue({
            el: '#root',
            data: {
                name: "class和style增強綁定",
                classarr: ["text_1", "text_2", "text_3"],
            },
            methods: {
            }
        });
     </script>

css樣式:

        .text_1 {
            background-color: yellowgreen;
        }
 
        .text_2 {
            font-size: 30px;
            text-shadow: 2px 2px 10px red;
        }
 
        .text_3 {
            border-radius: 20px;
        }

執行結果:

Vue.js中class與style的增強綁定如何實現

(3)綁定class樣式,對象寫法

適用于:要綁定的樣式個數和名字也確定,需要動態顯示 

    <div id="root">
        <!-- 綁定class樣式,對象寫法,適用于:要綁定的樣式個數和名字也確定,需要動態顯示 -->
        <div class="basic" v-bind:class="classobj">
            {{name}}
        </div>
    </div>
    <script>
        const vm = new Vue({
            el: '#root',
            data: {
                name: "class和style增強綁定",
                classobj: {
                    text_1: false,
                    text_2: true,
                    text_3: false,
                },
            },
            methods: {
            }
        });
     </script>

css樣式:

        .text_1 {
            background-color: yellowgreen;
        }
 
        .text_2 {
            font-size: 30px;
            text-shadow: 2px 2px 10px red;
        }
 
        .text_3 {
            border-radius: 20px;
        }

執行結果:

Vue.js中class與style的增強綁定如何實現

二、v-bind綁定內聯樣式style

通過內聯(style)綁定給DOM元素示例:

(1)綁定style樣式---對象形式

    <div id="root">
        綁定style樣式----對象形式
        <br><br>
        <div v-bind: class="basic">
            {{name}}
        </div><br><br>
    </div>
    <script>
        const vm = new Vue({
            el: '#root',
            data: {
                name: "class和style增強綁定",
                styleobj: {
                    width: "300px",
                    height: "100px",
                    border: "1px solid black",
                    fontSize: "40px",
                    backgroundColor: "blue"
                },
            },
            methods: {
            }
        });
     </script>

執行結果:

Vue.js中class與style的增強綁定如何實現

 (2)綁定style樣式---數組寫法

    <div id="root">
         綁定style樣式----數組寫法
        <br><br>
        <div v-bind: class="basic">
            {{name}}
        </div>
    </div>
    <script>
        const vm = new Vue({
            el: '#root',
            data: {
                name: "class和style增強綁定",
                stylearr: [
                    {width: "300px"},
                    {height: "100px"}, 
                    {border: "1px solid black"},
                    {backgroundColor:"red"},
                    {fontSize:"20px"}
                ],
            },
            methods: {
            }
        });
     </script>

執行結果:

Vue.js中class與style的增強綁定如何實現

以上就是“Vue.js中class與style的增強綁定如何實現”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

明溪县| 克山县| 临颍县| 旺苍县| 靖西县| 沅陵县| 灌云县| 洛南县| 高青县| 康乐县| 云霄县| 高陵县| 宜黄县| 喀喇沁旗| 金川县| 建湖县| 凤山市| 霞浦县| 武鸣县| 峨山| 怀柔区| 利辛县| 河源市| 正定县| 台南县| 皮山县| 黄大仙区| 潞城市| SHOW| 中卫市| 钦州市| 涟水县| 武乡县| 天柱县| 南丰县| 关岭| 新蔡县| 柘荣县| 莫力| 漳浦县| 鹤庆县|