iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >详解Vue.jsClass与Style绑定
  • 746
分享到

详解Vue.jsClass与Style绑定

2024-04-02 19:04:59 746人浏览 薄情痞子
摘要

目录vue.js Class与Style绑定绑定html Class对象语法数组语法绑定内联样式对象语法数组语法自动添加前缀总结Vue.js Class与Style绑定 对于数据绑定

Vue.js Class与Style绑定

对于数据绑定,一个常见的需求是操作元素的class列表和它的内联样式。因为它们都是attribute,我们可以用v-bind处理它们;只需要计算出表达式最终的字符串。不过,字符串拼接麻烦又易错。因此,在v-bind用于class和style时,Vue.js专门增强了它。表达式的结果类型除了字符串以外,还可以是对象或数组。

绑定HTML Class

对象语法

我们可以传给v-bind:class一个对象,以动态地切换class。注意,v-bind:class指令可以与普通的class特性共存。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
    <div id="example" class="static" :class=" {'didi-orange': isRipe,'didi-green': isNotRipe}"></div>
</body>
<script>
    new Vue({
        el: '#example',
        data: {
            isRipe: true,
            isNotRipe: false
        }
    })
</script>
</html>

在这里插入图片描述

当isRipe和isNotRipe变化时,class列表将相应地更新。例如,如果isNotRipe变为true,那么class列表将变为“static didi-orange didi-green”。

注:尽管可以用Mustache标签绑定class,比如class="{{className}}",但是我们不推荐这种写法和v-bind:class混用。
我们也可以直接绑定数据中的一个对象。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="Https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
    <div id="example" :class="ddfe"></div>
</body>
<script>
    new Vue({
        el: '#example',
        data: {
            ddfe: {
                isRipe: true,
                isNotRipe: false
            }
        }
    })
</script>
</html>

在这里插入图片描述

还可以在这里绑定一个返回对象的计算属性

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
    <div id="example" :class="ddfe"></div>
</body>
<script>
    new Vue({
        el: '#example',
        data: {
            didiAge: 4,
            didiMember: 6000
        },
        computed: {
            ddfe: function () {
                return {
                    'didi-orange': this.didiAge > 3,
                    'didi-large': this.didiMember > 1000
                }
            }
        }
    })
</script>
</html>

在这里插入图片描述

数组语法

我们可以把一个数组传给v-bind:class,以应用一个class列表。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
    <div id="example" :class="[didiHandsome,didiBeautful]"></div>
</body>
<script>
    new Vue({
        el: '#example',
        data: {
            didiHandsome: 'didiHandsome',
            didiBeautful: 'didiBeautful'
        }
    })
</script>
</html>

在这里插入图片描述

绑定内联样式

对象语法

v-bind:style的对象语法十分直观——看着非常像CSS,其实它是一个javascript对象。CSS属性名可以用驼峰式或短横分隔命名。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
    <div id="example" :style="{ color: didiColor, fontSize: fontSize + 'px' }"></div>
</body>
<script>
    new Vue({
        el: '#example',
        data: {
            didiColor: 'orange',
            fontSize: 30
        }
    })
</script>
</html>

在这里插入图片描述

通常直接绑定到一个样式对象更好,让模板更清晰。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
    <div id="example" :style="ddfe"></div>
</body>
<script>
    new Vue({
        el: '#example',
        data: {
            ddfe: {
                color: 'orange',
                fontSize: '13px'
            }
        }
    })
</script>
</html>

在这里插入图片描述

同样的,对象语法常常结合返回对象的计算属性使用。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
</head>
<body>
    <div id="example" :style="ddfe"></div>
</body>
<script>
    new Vue({
        el: '#example',
        data: {
            didiAge: 4,
            didiMember: 6000
        },
        computed: {
            ddfe: function () {
                return {
                    color: this.didiAge>3 ? 'orange': 'green',
                    fontSize: this.didiMember>1000 ? '20px': '10px'
                }
            }
        }
    })
</script>
</html>

在这里插入图片描述

数组语法

v-bind:style的数组语法可以将多个样式对象应用到一个元素上。

<div id="example" :style="[ ddfe, didiFamily]"></div>

自动添加前缀

当 v-bind:style 使用需要添加浏览器引擎前缀的 CSS property 时,如 transfORM,Vue.js 会自动侦测并添加相应的前缀。

主流浏览器引擎前缀:

  • WEBkit(谷歌,Safari,新版Opera浏览器,以及几乎所有iOS系统中的浏览器(包括 iOS 系统中的火狐浏览器);基本上所有基于WebKit 内核的浏览器)
  • moz(火狐浏览器)
  • o(旧版Opera浏览器)
  • ms(IE浏览器 和 Edge浏览器)

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!

--结束END--

本文标题: 详解Vue.jsClass与Style绑定

本文链接: https://www.lsjlt.com/news/162429.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 详解Vue.jsClass与Style绑定
    目录Vue.js Class与Style绑定绑定HTML Class对象语法数组语法绑定内联样式对象语法数组语法自动添加前缀总结Vue.js Class与Style绑定 对于数据绑定...
    99+
    2024-04-02
  • Vue数据与事件绑定以及Class和Style的绑定详细讲解
    目录一、Vue的数据绑定二、Vue的事件绑定三、Class和Style的绑定一、Vue的数据绑定 1. 单向数据绑定:将Model绑定到View上,当通过JavaScript代码改变...
    99+
    2023-01-14
    Vue数据绑定 Vue事件绑定 Vue Class和Style绑定
  • Vue.js中Class与Style绑定的示例分析
    这篇文章主要介绍了Vue.js中Class与Style绑定的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Vue.js Class与Style绑定对于数据绑定,一个常...
    99+
    2023-06-26
  • Vue中Class与Style绑定的示例分析
    这篇文章主要为大家展示了“Vue中Class与Style绑定的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Vue中Class与Style绑定的示例分析...
    99+
    2024-04-02
  • Vue.2.0.5如何实现Class与Style绑定的实例
    小编给大家分享一下Vue.2.0.5如何实现Class与Style绑定的实例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Cla...
    99+
    2024-04-02
  • Vue.js中class与style的增强绑定实现方法
    目录一、v-bind绑定class属性(1)绑定class样式,字符串写法(2)绑定class样式,数组写法(3)绑定class样式,对象写法二、v-bind绑定内联样式style(...
    99+
    2023-05-16
    Vue.js class与style绑定 Vue.js class与style
  • vue.js中怎么绑定class和style
    这篇文章将为大家详细讲解有关vue.js中怎么绑定class和style,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一.绑定Class属性。绑定数据用v-...
    99+
    2024-04-02
  • vue中style如何绑定background-image
    这篇文章主要介绍了vue中style如何绑定background-image,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。问题:使用vue加...
    99+
    2024-04-02
  • vue如何绑定class和style样式
    这篇“vue如何绑定class和style样式”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue如何绑定class和sty...
    99+
    2023-07-04
  • vuejs中怎么绑定class和style样式
    这期内容当中小编将会给大家带来有关vuejs中怎么绑定class和style样式,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。绑定Html Class我们可以传给 v-b...
    99+
    2024-04-02
  • vue中怎么绑定行间样式style
    vue中怎么绑定行间样式style,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、绑定class属性的方式1、通过数组的方式...
    99+
    2024-04-02
  • vue中的style样式如何动态绑定
    目录style样式如何动态绑定动态设置style样式style样式如何动态绑定 方法一: (1) html中:  <div class="videoMa" ref="video...
    99+
    2024-04-02
  • vue中的style样式怎么动态绑定
    今天小编给大家分享一下vue中的style样式怎么动态绑定的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。style样式如何动...
    99+
    2023-06-30
  • vue动态样式绑定class/style怎么写
    本文小编为大家详细介绍“vue动态样式绑定class/style怎么写”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue动态样式绑定class/style怎么写”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。简...
    99+
    2023-07-05
  • React事件绑定详解
    目录类组件事件绑定函数组件事件绑定总结 React事件绑定和原生DOM事件绑定相似 语法:on+事件名={事件处理程序} 例如:onClick={()=>{}...
    99+
    2024-04-02
  • Vue双向绑定详解
    目录1、双向绑定2、那么其它标签选中会不会也有这个结果,答案当然是有:3、我们再来看一个:4、注意 总结 1、双向绑定 双向绑定就是 你们前端数据改变 你们data中的数据也会改变,...
    99+
    2024-04-02
  • angular双向绑定详解
    目录双向绑定原理ngModel效果图自定义双向绑定属性组件-html组件-ts外部使用效果图总结双向绑定原理 双向绑定将属性绑定与事件绑定结合在一起。 Angular 的双向绑定语...
    99+
    2024-04-02
  • Node.JS事件的绑定与触发示例详解
    目录简介绑定事件on()addListener()once()监听事件emit() 传参 删除事件removeListener()removeAllListene...
    99+
    2022-11-16
    node.js事件绑定 nodejs事件触发 node 事件
  • C/C++ Qt 数据库与TreeView组件绑定详解
    在上一篇博文《C/C++ Qt 数据库QSql增删改查组件应用》介绍了Qt中如何使用SQL操作函数,并实现了对数据库的增删改查等基本功能,从本篇开始将实现数据库与View组件的绑定,...
    99+
    2024-04-02
  • Vue中的事件绑定与解绑方式
    目录事件绑定基础知识使用场景注意事项v-on 绑定事件语法实例$ref绑定事件语法实例事件解绑语法实例 总结事件绑定 基础知识 使用场景 子组件==>父组件传数据在父...
    99+
    2022-11-13
    Vue 事件绑定 Vue 事件解绑 Vue 事件
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作