zoukankan      html  css  js  c++  java
  • 2021年4月23日

    时间:1个小时左右

    代码:200行左右

    博客:1

    知识点:vue的绑定对象,绑定class

    我们可以给v-bind:class 一个对象,以动态地切换class。

    注意:v-bind:class指令可以与普通的class特性共存

    1、 v-bind 中支持绑定一个对象
    如果绑定的是一个对象 则 键为 对应的类名 值 为对应data中的数据
    <!--
    HTML最终渲染为 <ul class="box textColor textSize"></ul>
    注意:
    textColor,textSize 对应的渲染到页面上的CSS类名
    isColor,isSize 对应vue data中的数据 如果为true 则对应的类名 渲染到页面上
    当 isColor 和 isSize 变化时,class列表将相应的更新,
    例如,将isSize改成false,
    class列表将变为 <ul class="box textColor"></ul>
    -->
    <ul class="box" v-bind:class="{textColor:isColor, textSize:isSize}">
    <li>学习Vue</li>
    <li>学习Node</li>
    <li>学习React</li>
    </ul>
    <div v-bind:style="{color:activeColor,fontSize:activeSize}">对象语法</div>
    <sript>
    var vm= new Vue({
    el:'.box',
    data:{
    isColor:true,
    isSize:true,
    activeColor:"red",
    activeSize:"25px",
    }
    })
    </sript>
    <style>
    .box{
    border:1px dashed #f0f;
    }
    .textColor{
    color:#f00;
    background-color:#eef;
    }
    .textSize{
    font-size:30px;
    font-weight:bold;
    }
    </style>
    2、 v-bind 中支持绑定一个数组 数组中classA和 classB 对应为data中的数据
    这里的classA 对用data 中的 classA
    这里的classB 对用data 中的 classB
    <ul class="box" :class="[classA, classB]">
    <li>学习Vue</li>
    <li>学习Node</li>
    <li>学习React</li>
    </ul>
    <script>
    var vm= new Vue({
    el:'.box',
    data:{
    classA:‘textColor‘,
    classB:‘textSize‘
    }
    })
    </script>
    <style>
    .box{
    border:1px dashed #f0f;
    }
    .textColor{
    color:#f00;
    background-color:#eef;
    }
    .textSize{
    font-size:30px;
    font-weight:bold;
    }
    </style>

    绑定对象和绑定数组 的区别 :

    绑定对象的时候 对象的属性 即要渲染的类名 对象的属性值对应的是 data 中的数据 绑定数组的时候数组里面存的是data 中的数据

    3.绑定style

    <div v-bind:style="styleObject">绑定样式对象</div>'
    <!-- CSS 属性名可以用驼峰式 (camelCase) 或短横线分隔 (kebab-case,记得用单引号括起来) -->
    <div v-bind:style="{ color: activeColor, fontSize: fontSize,background:'red' }">内联样式
    </div>
    <!--组语法可以将多个样式对象应用到同一个元素 -->
    <div v-bind:style="[styleObj1, styleObj2]"></div>
    <script>
    new Vue({
    el: '#app',
    data: {
    styleObject: {
    color: 'green',
    fontSize: '30px',
    background:'red'
    },
    activeColor: 'green',
    fontSize: "30px"
    },
    styleObj1: {
    color: 'red'
    },
    styleObj2: {
    fontSize: '30px'
    }
    </script>
  • 相关阅读:
    sublime 部分插件
    Error: EACCES: permission denied, mkdir '......node-sass/build'错误解决方案
    字符串
    数组
    MySQL5.7.26 忘记Root密码小计
    CentOS7安装MySQL8.0小计
    代替print输出的PY调试库:PySnooper
    聊聊数据库~5.SQL运维上篇
    'gbk' codec can't encode character 'xa0' in position 34: illegal multibyte sequence
    稍微记录下Django2.2使用MariaDB和MySQL遇到的坑
  • 原文地址:https://www.cnblogs.com/j-y-s/p/14903292.html
Copyright © 2011-2022 走看看