首页 前端知识 Vue 响应式渲染 - Vue2 Class和style

Vue 响应式渲染 - Vue2 Class和style

2025-03-19 11:03:41 前端知识 前端哥 378 78 我要收藏

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue响应式渲染 - Vue2 Class和style

目录

Vue2 Class和style

动态切换class-对象

添加新类

如何解决方案

动态切换class-数组

增加类方式

动态切换style-对象

在data中设置变量

动态添加底层不支持

增加元素

动态添加样式

总结


Vue2 Class和style

引用Vue2版本在多个class之间切换。

动态切换class-对象

title1、title2、title3都是style中设置的类,

在vue的data中定义一个变量,

来对div进行类的批量赋值。

示例如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.title1 {
color:red;
}
.title2 {
font-weight: bold;
}
.title3 {
background: #ccc;
}
</style>
<script src="../lib/vue.js"></script>
</head>
<body>
<div id="box">
<div :class="classobj">动态切换class-1-对象</div>
</div>
<script>
let vm = new Vue({
el:'#box',
data:{
classobj: {
title1:true,
title2:true,
title3:false,
}
}
})
</script>
</body>
</html>
复制

 

添加新类

在控制台通过定义的vm添加新的类。

示例如下:

后期(临时)添加的类,不会拦截,无法侦听到。

示例如下:

如何解决方案

Vue2 Vue.set(目标对象,属性,true)

Vue3 支持动态增加属性的拦截。

动态切换class-数组

使用数组方式动态切换div的class,示例如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
.title1 {
color: red;
}
.title2 {
font-weight: bold;
}
.title3 {
background: #ccc;
}
.title4 {
border: 2px solid #000;
}
</style>
<script src="../lib/vue.js"></script>
</head>
<body>
<div id="box">
<div :class="classobj">动态切换class-1-对象</div>
<div :class="classarr">动态切换class-2-数组</div>
</div>
<script>
var vm = new Vue({
el: '#box',
data: {
classobj: {
title1: true,
title2: true,
title3: false,
},
classarr: ["title1", "title4"]
}
})
</script>
</body>
</html>
复制

 

增加类方式

这时想新增一个类,如果操作,示例如下:

动态切换style-对象

通过vue动态绑定div的行内样式,就可以通过对象方式动态切换style。

示例如下:

<div :style="styleobj">动态切换style-1-对象</div>
复制
在data中设置变量

设置styleobj变量,使用对象方式,在其中设置属性时需注意使用驼峰语法

示例如下:

styleobj: {
backgroundColor:'blue'
}
复制
动态添加底层不支持

Vue2 解决方案

使用Vue.set(vm.styleobj, "fontSize", "30px")

示例如下:

增加元素

在页面增加div。示例如下:

<div :style="stylearr">动态切换style-2-数组</div>
复制

 在data中设置变量,如下:

动态添加样式

vm.stylearr.push({fontSize:"30px"})

总结

Vue 渐进式JavaScript 框架 基于Vue2的学习笔记 - Vue响应式渲染 - Vue2 Class和style

转载请注明出处或者链接地址:https://www.qianduange.cn//article/24101.html
标签
评论
发布的文章

prompt工程起步

2025-03-23 11:03:21

ChatPromptTemplate的使用

2025-03-23 11:03:20

地基Prompt提示常用方式

2025-03-23 11:03:20

网络安全知识点

2025-03-23 11:03:15

第27周JavaSpringboot git初识

2025-03-23 11:03:15

Android studio运行报错处理

2025-03-23 11:03:15

大家推荐的文章
会员中心 联系我 留言建议 回顶部
浏览器升级提示:您的浏览器版本较低,建议您立即升级为知了极速浏览器,极速、安全、简约,上网速度更快!立即下载
复制成功!