veu 中通过属性绑定为元素设置 class 类样式 | 学习笔记

简介: 快速学习 veu 中通过属性绑定为元素设置 class 类样式

开发者学堂课程【Vue.js 入门与实战veu 中通过属性绑定为元素设置 class 类样式】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/586/detail/8137


veu 中通过属性绑定为元素设置 class 类样式


目录

一、 使用class样式

二、 代码

 

一、使用 class 样式:

1. 数组

<h1 :class="['red', 'thin']">这是一个邪恶H1</h1> 

2. 数组中使用三元表达式

<h1 :class="['red', "thin', isactive? 'active' : ‘’]”>这是一个邪恶的H1</h1>

3. 数组中嵌套对象

<h1 :class="['red', 'thin',{'active': isactive}]">这是一个邪恶的H1</h1>

4. 直接使用对象

<h1 :class="{red:true, italic:true, active:true, thin:true}">这是一个邪恶的H1</h1>

学习 Vue 里面如何使用样式,在网页中如果写样式有两种写法:第一种直接写行内的内联样式;第二种可以把内联样式抽离为一个单独的 class 类,这样通过 class 来进行引用。先来看如何在 Vue 中使用 class 进行样式设置。 

这里总结了有四种使用方式

第一种直接使用数组,这个’red’和这个’thin’以数的形式作为两个字符串,’red’是一个类,’thin’也是一个类,当前这个h1就有两个类,就通过中括号形式来把这两个类以数组里面的每一项给它含进去。构建一个 html。

先写个类.red{color:red;}即红色字体thin {font-weight: 200;}即200瘦体.italic{font-style:italic;}即斜体.active{letter-spacing: 0.5em;}即0.5间距。

通过简写即:(冒号),这时候只写red则会报错,因为找不到这个变量,没有定义。

这时候通过数组的形式,比如用’thin’,这时候是以字符串穿过去的,这样是可以的。但是如果不以字符串的形式则把它当成一个变量去找,将找不到。所以在用类的时候,类名必须用单引号包起来,如果想用多个类,加逗号继续往后拼就行了。

1666935381215.jpg

active 只有为true的时候才能被应用,只有当前被选中才有这个类,这里面在 data定义一个 flag 默认等于 true,如果 flag 为 true 的话,应该添加这一类。如果flag 不写引号,它会去 data 里面找 flag,它也是变量,并且能找到。 

所以这里是当前为 ture,可以看出字符间距间距比较宽一些,如果改为 false,字符间距就窄了。

image.png

image.png

image.png

image.png

由于写三元表达式比较麻烦,在这里面直接写表达式不好,所以就可以把三元表达式改造成这种对象的形式。

这里的前两个类都会被运用到,当然第三个类通过一个对象,对象里面有个键,就是类名,键的值就是 flag 标志,这个标志为 true,就会运用这个类,如果这个 flag为 false,就不会运用这个类。

最后直接使用对象:class,还是对 class 做了属性绑定,在这里面并没有传数组,而且直接传了一个对象。对象里面前面是类名,后面是为 true 或者为 false。 

为 true 那么这个类就会被应用到元素上,如果为 false 就不会被应用了。

classObj 是一个属性的引用,引用在 classObj: { red: true, thin, italic: false, active: false }属性上,这个属性指向后面的对象,就相当于间接的放了一个对象。然后保存、刷新,是没有问题的。

image.png

以上就是 Vue 里面通过 class 属性绑定的形式为元素添加类样式,总共介绍了4种方式。

 

二、代码:

<head>

<meta charset="UPr-8">

<meta name="viewport" content="width=device-width,initial-scale=1.0">

<meta http-equiv="X-UA-Compatible" content="ie=edge">

<title>Document</title>

<script src=" . /lib/vue-2.4.0.js"></script>

<style>

.red {

color:red;

}

.thin {

font-weight: 200;

}

.italic{

font-style:italic;

}

.active{

letter-spacing: 0.5em;

}

</style>

</head>

<body>

<div id=”app”>

<!--<h1 class=”red thin”>这是一个很大很大的H1,大到你无法想象!!!</h1>-->

<!--第一种使用方式,直接传递一个数组,注意:这里的class需要使用v-bind做数据绑定-->

<!--<h1 :class=”[‘thin’,’italic’]”>这是一个很大很大的H1,大到你无法想象!!!</h1>-->

<!--在数组中使用三元表达式-->

<!--<h1 :class=”[‘thin’, ’italic’, flag?‘active’:’’]”>这是一个很大很大的H1,大到你无法想象!!!</h1>-->

<!--在数组中使用 对象来代替三元表达方式,提高代码的可读性-->

<!--<h1 :class=”[‘thin’, ’italic’, {‘active’:flag} ]”>这是一个很大很大的H1,大到你无法想象!!!</h1>-->

<!--在为class使用v-bind绑定对象的时候,对象的属性是类名,由于对象的属性可带引号,也可不带引号,所以这里没写引号;属性的值是一个标识符-->

<h1 :class=”classObj”>这是一个很大很大的H1,大到你无法想象!!!</h1>

</div>

<script>

//创建vue 实例,得到ViewMode1

var vm= new vue ({

el: ‘#app’,

data: {

flag: true,

classObj: { red: true, thin, italic: false, active: false }

},

methods: {}

 });

</script>

</body>

输出为:

1:

1666935490453.jpg

2:

1666935498726.jpg

3:

1666935506469.jpg

4

1666935514705.jpg

相关文章
|
小程序 API 索引
uniapp中uview组件库中丰富的Picker 选择器用法
uniapp中uview组件库中丰富的Picker 选择器用法
2439 0
|
3月前
|
测试技术 API 开发者
Postman 旧版本下载方法全解(图文教程)
本文详解如何下载Postman历史版本,涵盖卸载当前版本、查找官方发布记录及旧版下载链接,并探讨版本管理痛点,引出Apifox等集成化接口测试工具的优势,助力开发测试更高效。
Postman 旧版本下载方法全解(图文教程)
uniapp页面之间通信、传参、传值方法(父→传→子,子→传→父);获取被打开页面的数据→传→当前页面;当前页面的数据→传→被打开页面
uniapp页面之间通信、传参、传值方法(父→传→子,子→传→父);获取被打开页面的数据→传→当前页面;当前页面的数据→传→被打开页面
|
Windows
DOS 批处理 setlocal命令、endlocal命令详解
setlocal这是一个命令,它开始局部化环境更改,通常在批处理文件中使用,以确保在脚本中所做的任何环境更改(例如设置或修改环境变量)不会影响到调用此批处理的上下文或其他批处理文件
662 14
|
监控 安全 Java
Spring Boot 中的 Actuator 是什么?
Spring Boot 中的 Actuator 是什么?
2502 6
|
存储 Java Apache
Java“NoClassDefFoundError”解决
“Java NoClassDefFoundError”是运行时错误,表示JVM找不到某个类的定义。通常由类路径设置不当、依赖缺失或版本冲突引起。解决方法包括检查类路径、确保所有依赖正确添加及版本兼容。
1914 3
|
移动开发 JavaScript 小程序
uniapp中组件库的Checkbox 复选框 的丰富使用方法
uniapp中组件库的Checkbox 复选框 的丰富使用方法
1550 0
|
Shell
makefile编写与使用
makefile编写与使用
1040 0
makefile编写与使用
|
JavaScript
Vue3 + Vite + TS项目引入iconfont图标(Svg方式)
前言 每一个项目都避免不了使用各种各样的图标,如果我们使用了 UI 组件库,比如说 ELement 等,那么组件库有一些封装好的图标供我们使用。但是项目是多变的和复杂的,组件库提供的图标很多时候不能满足需求,这个时候就需要我们自己引入想要的图标了。 今天介绍的便是如何将 iconfont 阿里图标库的图标引入到我们的 Vue3 项目中来!
5820 1
Vue3 + Vite + TS项目引入iconfont图标(Svg方式)
|
消息中间件 Java Kafka
skywalking日志收集
skywalking日志收集
skywalking日志收集