work-notes(6):vue中 v-for,class 和 style 中绑定带入变量的写法,如何在style中加入变量?

news/2024/7/10 0:25:10 标签: js, vue

时间:2022-04-14

更新:2022-04-18

文章目录

    • 原因解释
  • :class 写法
    • 1、三元运算
    • 2、变量
    • 3、对象
    • 4、数组
  • :style 写法
    • 1、变量
    • 2、对象
    • 3、三元运算

原因解释

在 v-for 写入到 style 或 class,特别是绑定的 :style:class 就不生效

:class 写法

1、三元运算

(1)首先拿一个变量(value)作为判断值;

(2)当为判断结果为 true ,此时付给该盒子 class名1 ,否则 class名2;

(3)注意,最外层为 双引号,内层为 单引号;
<div :class="[value === 'true'? 'className1' : 'className2']"></div>

.className1 {
 color: red;
}

.className2 {
 color: blue;
}

2、变量

<div :class="{classA:a, classB:b}"></div>

new Vue({
   el:'#app',
    data:{
        a:true,	//	根据 true/false 判断是否执行 class
        b:true,
    }
})

3、对象

<div :class="test"></div>

new Vue({
  el:'#app',
    data:{
        test:{
            color:red;
            background:yellow;
        }
    }
})

4、数组

<div :class="[test1, test2]"></div>

new Vue({
    el:'#app',
    data:{
        test1Class:test1,
        test2Class:test2
    }
})

:style 写法

1、变量

<div :style="{height: H + 'px' }">你懂的</div>


new Vue({
    el:'#app',
    data:{
        H: 250,
    }
})

2、对象

<div :style="testObj">你懂的</div>

new Vue({
   el:'#app',
    data:{
        testObj:{
            color: yellow;
            background: yellow;
        }
    }
})

3、三元运算

<div :style="{'height': (item.height >= 177 ? '182' : '180') + 'px'}">你懂的</div>

参考文献
https://blog.csdn.net/weixin_39581226/article/details/80682867?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165034843216780271519866%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=165034843216780271519866&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~rank_v31_ecpm-1-80682867.142v9pc_search_result_cache,157v4new_style&utm_term=%3Aclass%E5%86%99%E6%B3%95&spm=1018.2226.3001.4187


http://www.niftyadmin.cn/n/1410343.html

相关文章

work-notes(7):如何让元素从中心放大?如何让图片从中心放大?

时间&#xff1a;2022-04-18 文章目录原因解释讲解实现代码原因解释 之前一直在纠结如何让背景图片从中心放大&#xff0c;好像 background-size 做不到这样的效果&#xff1b; 最后找到了一个最简单的方法&#xff0c;一个 CSS 属性就能解决&#xff1b; 讲解 其实就是通过…

work-notes(8):如何制作卡片凹陷?如何制作梯形?如何制作有凹陷的盒子?如何制作透明凹陷?

时间&#xff1a;2022-04-20 文章目录1、实现描述2、思路分析3、针对 头部凹陷三盒子摆放方式4、给两边盒子的属性5、简单代码实现例子6、总结1、实现描述 我们公司开发了一个视频会议网站&#xff0c;有一个会议列表卡片头部是有一个透明凹陷的&#xff0c;NND还没见过这样无…

work-notes(9):vue 如何在 v-if 里面对数组的长度进行判断?为什么 v-if 里面判断数组长度 length报错?

时间&#xff1a;2022-04-22 文章目录1、原因解释2、错误写法2.1 报错3、正确方式3.1 判空3.2 判非空1、原因解释 首先数组长度为 0 的时候可能会报错&#xff0c;因为数组可能存在有 undefined 的状况&#xff1b; 所以写的判断条件尽可能的全一点&#xff1b; 2、错误写法…

work-note(10):父子传值时,父组件不会自动更新(刷新)展示出子组件,子组件创建成功,但是需要手动刷新才能展示子组件

时间&#xff1a;2022-05-15 文章目录问题描述问题分析解决方式1、首先确定传入的值2、监听这个传入的值&#xff08;重点&#xff09;监听写法&#xff1a;整体代码&#xff1a;附加问题描述 刚刚开始做项目&#xff0c;没有多少工作经验&#xff0c;好不容易查做了父子组件传…

work-notes(11):从父组件传入到子组件的值存在有多种类型时怎么写,怎么写传入值才正确?

时间&#xff1a;2022-05-15 文章目录问题描述正确写法重点问题描述 &#xff08;1&#xff09;当父组件传到 子组件的值&#xff0c;有多个的时候时怎么写才正确&#xff1f;好比说&#xff0c;我给一个子组件盒子&#xff0c;我传入的值可能是一个数字&#xff08;Number&am…

work-notes(12):如何二次封装 Element UI 的 dialog 弹窗,发现弹窗只能点击触发一次是什么原因,如何解决弹窗只能触发一次的问题?

时间&#xff1a;2022-05-15 文章目录问题描述问题分析1、如何二次封装 element UI 的 dialog 弹窗&#xff1f;2、实现过程&#xff08;1&#xff09;在 script 标签 中 props 传入值&#xff08;2&#xff09;绑定到 dialog 标签内主要结构&#xff1a;个人例子&#xff1a;解…

work-notes(13):如何去掉 el-select 的边框?为什么border:none; 去不掉el-select 的边框?去掉 bo-shadow

时间&#xff1a;2022-05-23 文章目录问题描述解决办法用法1、全局写法2、局部写法问题描述 前些天一个功能需要用到 el-select&#xff0c;但是不用透明的边框&#xff1b;给了 border:none; 却不生效&#xff1b;大概是这样&#xff1a;解决办法 1、首先要去掉 border&…

work-notes(14):路由跳转如何传值,VUE3.0 路由如何携带参数传值?

时间&#xff1a;2022-05-23 文章目录问题描述解决思路路由跳转如何携带参数&#xff08;1&#xff09;VUE2.0 方式1、router-link 方式2、this.$router.push() 方式3、获取参数方式&#xff08;2&#xff09;VUE3.0 方式解析1&#xff09;引入路由2&#xff09;使用3&#xff…