vue2.0 笔记(杂记)

1、vue class、style表达式的类型: 字符串、对象和数组
一、字符串vue

<div class="static" v-bind:class="class-a">
// 结果:
<div class="static class-a"></div>

 

二、对象 :class="{ 'key': value变量, 'key': value变量 }" 或者 :class="对象key"web

<div class="static" v-bind:class="{ 'class-a': isA, 'class-b': isB }"></div>

data: {
  isA: true,
  isB: false
}
// 结果:
<div class="static class-a"></div>

等同于:(更简洁)数组

<div class="static" v-bind:class="classObject"></div>

data: {
    classObject: {
        'class-a': true,
        'class-b': false
    }
}

 

三、数组 :class="[value变量, value变量]"flex

<div v-bind:class="[classA, classB]">

data: {
    classA: 'class-a',
    classB: 'class-b'
}
// 结果:
<div class="static class-a class-b"></div>

 

四、综合应用
三元表达式:flexbox

<div v-bind:class="[isActive ? classA : '', classB]"></div>

data: {
    isActive: true,
    classA: 'class-a',
    classB: 'class-b'
}

// 结果同上

简化后spa

<div v-bind:class="[{class-a: isActive}, classB]"></div>

data: {
    isActive: true,
    classB: 'class-b'
}
// 结果同上


2、style样式绑定与class原理相同code

注意点:
一、CSS 属性名能够用驼峰式 (camelCase) 或短横线分隔 (kebab-case,需用单引号括起来) 来命名
二、2.3.0+ 添加前缀,只匹配兼容的之一
<div :style="{ display: ['-webkit-box', '-ms-flexbox', 'flex'] }"></div>对象


3、v-forblog

数组中: v-for="(item[, index]) in arrays" 或者 v-for="item of arrays"
对象中: v-for="(value[, key, index) in object" 字符串

相关文章
相关标签/搜索