class绑定

常规用法

<div :class="{ active: isActive }"></div>

<div :class="{ active: isActive, 'text-danger': hasError }"></div>


绑定计算属性

<div :class="classObject"></div>

computed: {
  classObject() {
    return {
      active: this.isActive && !this.error,
      'text-danger': this.error && this.error.type === 'fatal'
    }
  }
}


绑定数组

1.0> 绑定一个数组来渲染多个 CSS class:

data() {
  return {
    activeClass: 'active',
    errorClass: 'text-danger'
  }
}

// 模板
<div :class="[activeClass, errorClass]"></div>

// 渲染的结果是:
<div class="active text-danger"></div>

2.0> 三元表达式:

<div :class="[isActive ? activeClass : '', errorClass]"></div>

3.0> 数组嵌套对象:

<div :class="[{ active: isActive }, errorClass]"></div>


内联样式

与绑定class相同,如下:

<div :style="{ color: activeColor, fontSize: fontSize + 'px' }"></div>
<div :style="[baseStyles, overridingStyles]"></div>

支持样式多值:

<div :style="{ display: ['-webkit-box', '-ms-flexbox', 'flex'] }"></div>
举报

© 著作权归作者所有


1