Uni-app中Class绑定与Style绑定

时间:2023-03-09 18:10:36
Uni-app中Class绑定与Style绑定

为了节约性能,我们将Class与Style的表达式通过compiler硬编码到uni-app中

支持语法和转换效果如下:

Class支持语法:

 <view :class="{ active: isActive }">111</view>
<view class="static" v-bind:class="{ active: isActive, 'text-danger': hasError }">222</view
<view class="static" :class="[activeClass, errorClass]">333</view>
<view class="static" v-bind:class="[isActive ? activeClass : '', errorClass]">444</view>
<view class="static" v-bind:class="[{ active: isActive }, errorClass]">555</view>

Style支持语法:

 <view v-bind:style="{ color: activeColor, fontSize: fontSize + 'px' }">666</view>
<view v-bind:style="[{ color: activeColor, fontSize: fontSize + 'px' }]">777</view>

不支持Vue官方文档:   Class与Style绑定中的classObject和styleObject语法.

此外还可以用computed方法生成class或style字符串,插入到页面中,

 <template>
<!-- 支持 -->
<view class="container" :class="computedClassStr"></view>
<view class="container" :class="{active: isActive}"></view>
<!-- 不支持 -->
<view class="container" :class="computedClassObject"></view>
</template>

相关文章