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

相关文章
|
JSON 自然语言处理 JavaScript
介绍16个让你的代码变漂亮的属性
介绍16个让你的代码变漂亮的属性
317 0
介绍16个让你的代码变漂亮的属性
|
5月前
|
缓存 编解码 监控
reservedCodecCacheSize属性详解与配置建议
reservedCodecCacheSize属性详解与配置建议
|
6月前
|
前端开发
ELEMENT如何修改背景颜色,修改属性节点如何找
ELEMENT如何修改背景颜色,修改属性节点如何找
|
7月前
|
XML JSON 移动开发
BpmnJS 元素属性的updateProperties 和updateModdleProperties的属性更新区别
BpmnJS 元素属性的updateProperties 和updateModdleProperties的属性更新区别
270 1
|
7月前
|
JavaScript API
在vue使用class选择器和下标更改点击列表样式
在vue使用class选择器和下标更改点击列表样式
123 0
关于Navisworks属性查看的问题(属性不显示)
关于Navisworks属性查看的问题(属性不显示)
关于Navisworks属性查看的问题(属性不显示)
|
JavaScript 开发者
veu 中通过属性绑定为元素绑定 style 行内样式|学习笔记
快速学习 veu 中通过属性绑定为元素绑定 style 行内样式
126 0
veu 中通过属性绑定为元素绑定 style 行内样式|学习笔记
元素中必知重要属性和方法
上一篇文章我们学习了 Angular 中自定义 Video 操作,如果读者留意的话,会发现在这篇文章中就开始操作元素的属性 scrollLeft,这是很常用的一样属性。那么还有什么属性和方法比较重要呢?其又代表什么意思呢?下面我们进入主题。
元素中必知重要属性和方法
Java反射得到属性和属性的值和设置属性的值
Java反射得到属性和属性的值和设置属性的值