vue绑定html的class属性的方法
一、对象语法绑定class属性
class的属性代码如下
<style type="text/css">
.red{
color: red;
width: 100px;
height: 100px;
border: 2px;
border-color: blue;
border-style: solid; } </style>
1、用之前的方法绑定一下class属性
<div class="red">11111111111</div>
2、使用v-bind的方式,绑定一个字符串
<!-- 绑定的方式1,写一个字符串 -->
<div v-bind:class="'red'">22222222222222</div>
3、使用v-bind的方式,绑定一个属性
<!-- 绑定的方式2,写一个属性 -->
<div v-bind:class="cls">3333333333333</div>
4、使用v-bind的方式,绑定一个对象
<!-- 绑定的方式3,写一个对象,当isred为true,则加上这个类,如果isred为false,则不加这个类 -->
<div v-bind:class="{red:isRed}">444444444444444</div>
这里还需要在vue对象中定义isRed这个属性

5、使用v-bind的方式,绑定一个计算属性
<!-- 绑定的方式4,写一个计算属性的get方法 -->
<div v-bind:class="classObj">55555555555</div>
还需要定义一个get方式的计算属性

二、数组语法绑定class属性
先看css的class属性
<style type="text/css">
.red{
color: red;
width: 200px;
height: 200px;
border: 2px;
border-color: blue;
border-style: solid; }
.bg{
background-color: yellow;
} </style>
1、使用v-bind的方式,绑定一个数组模式的class属性
<div v-bind:class="[class1,class2]">22222222</div>
当然我们还需要在vue实例中定义这2个属性的值

2、使用v-bind绑定一个三元运算符
<div v-bind:class="[isActive?class1:class2]">3333333</div>
当然我们还需要在vue实例中定义isActive这个属性,如果该属性为真,则添加class1对应的class样式,如果该属性为false,则添加class2对应的class样式

3、还可以在数组中写一个对象,同样使用v-bind语法
<div v-bind:class="[{'bg':isActive},class1]">44444444</div>
如果isActive为真,则添加bg这个class属性,所以我们需要在vue的实例对象中定义isActive这个属性

4、同样这里也可以写一个计算属性
<div v-bind:class="classComputed">555555</div>
同样看下计算属性这个方法是怎么写的

5、直接绑定一个属性
<div v-bind:class="classobj">6666666</div>
同样需要定义一个属性

三、绑定html到组件上
先写一个组件
Vue.component('tou', {
template: `<div>
<input type="button" value="弹出" v-on:click="alertfunction">
<div>内容区域</div>
</div>`,
// 这里就是头部组件中的代码
methods:{
alertfunction:function(){
alert(123);
}
}
})
然后使用这个组件
<div id="app">
<tou v-bind:class="classobj"></tou> </div>
最后我们定义classobj这个对象

如果我们给组件添加class属性,是把class属性添加到组件的根元素上,且是追加的方式添加class属性,不会被覆盖原有的属性

根元素就是div标签
四、绑定内联样式
1、默认的绑定方式
<div style="height:100px;width=100px;color:red;border-style: solid;">1</div>
2、对象的语法
<div v-bind:style="{'height':h,'width':w,'color':r,'border-style':s}">2</div>
我们还需要在vue实例中定义属性

3、同样也可以绑定一个对象
<div v-bind:style="styleObj">3</div>
对象按照下面的格式写

4、传递一个数组对象进去
<div v-bind:style="[styleObj,styleObj2]">4</div>
同样我们需要定义这2个对象

vue绑定html的class属性的方法的更多相关文章
- Vue系列(二):发送Ajax、JSONP请求、Vue生命周期及实例属性和方法、自定义指令与过渡
上一篇:Vue系列(一):简介.起步.常用指令.事件和属性.模板.过滤器 一. 发送AJAX请求 1. 简介 vue本身不支持发送AJAX请求,需要使用vue-resource.axios等插件实现 ...
- vue自带的实例属性和方法($打头)
Vue 实例内置了一些有用的实例属性与方法.它们都有前缀 $,以便与用户定义的属性区分开来.例如: var data = { a: 1 } var vm = new Vue({ el: '#examp ...
- 04: vue生命周期和实例属性和方法
1.4 组件的生命周期 1.说明 1. Vue将组件看成是一个有生命的个体,跟人一样,定义了各个阶段, 2. 组件的生命周期:组件的创建过程 3. 组件生命周期钩子函数:当组件处在某个阶段,要执行某个 ...
- Vue生命周期,计算属性、方法、侦听器
vue实例和组件都有生命周期函数,beforeCreate()实例或组件没有被创建的时候执行的钩子函数:created()是实例或组件被创建完成的时候执行的钩子函 数:beforeMount()函数是 ...
- vue.js使用之计算属性与方法返回的差别
<!DOCTYPE html> <html> <head> <script src="https://unpkg.com/vue@2.4.2&quo ...
- Vue基础练习之计算属性、方法、监听器
<body> <div id="root"> {{fullName()}} {{age}} </div> <script> var ...
- Vue2.x源码学习笔记-Vue实例的属性和方法整理
还是先从浏览器直观的感受下实例属性和方法. 实例属性: 对应解释如下: vm._uid // 自增的id vm._isVue // 标示是vue对象,避免被observe vm._renderProx ...
- vue 绑定属性 绑定Class 绑定style
<template> <div id="app"> <h2>{{msg}}</h2> <br> <div v-bi ...
- vue实例的属性和方法
vue实例的属性和方法 1. 属性 vm.$el #指定要绑定的元素 vm.$data #Vue 实例的数据对象 vm.$options #获取自定义属性的值 new Vue({ customOpti ...
随机推荐
- Python基础:一、编程语言分类
编程语言主要从以下几个角度进行分类: 编译型和解释型 静态语言和动态语言 强类型语言和弱类型语言 编译型语言和解释型语言 编译和解释的区别是什么? 编译器是把源程序的每一条语句都编译成机器语言,并保存 ...
- springboot 缓存架构
线程内部缓存:a. 局部变量HashMap, 方法间传递 b. 使用ThreadLocal 本地缓存:单jvm内共享 可以使用(Concurrent)HashMap自己实现,也可以使用GuavaCa ...
- Linux服务安装配置总结
- Yii2中多表关联查询(hasOne、hasMany、join、joinwith)
表结构 现在有客户表.订单表.图书表.作者表, 客户表Customer (id customer_name) 订单表Order (id order_name customer_id ...
- 记录一下我在lubuntu里面用到的工具
文本编辑:Atom 文本对比:Beyond Compare 数据库工具:dbeaver Git工具:GitKraKen SVN工具:RapidSVN 网页编程工具:WebStorm 另外,14.04版 ...
- problem: vue中获取动态元素高度
前言:始终要相信你能想到的解决方案,基本上都是可以用技术实现的... 解决方法就是在mounted中在this.$nextTick()去获取,如果没有获取到,不是写法错就是,元素没有绑定对地方,注意检 ...
- NodeJs中类定义及类使用
1.首先定义类Point,文件名为point.class.js: // 定义类 class Point { //构造函数 constructor(x, y) { this.x = x;//类中变量 t ...
- 关于分布式uuid的一点设想
在一次公开课上,听别人讲过全局分布式uuid的设计,听过twitter的snowflake的设计.也听过,如果使用单独的计数器服务,不可能每次都保存当前计数器到文本,自己想到应该可以每隔一些数,例如1 ...
- Unity Lighting(一)光照练习
Unity 2018.1.2f1 原文链接:https://www.youtube.com/watch?v=VnG2gOKV9dw Unity Lighting练习最终效果 眼睛.光源与物体 光学基础 ...
- NAP(Network Access Protection)