Vue之(class与v-bind) : CSS点击Active类样式,以及页面加载第一个就有默认样式Active实战采坑篇...

本文介绍了一个使用MUI框架实现TabBar动态激活效果的示例。通过Vue.js结合MUI,实现了点击TabBar子元素时的蓝色高亮效果,并详细解释了如何在页面加载时自动为第一个子元素绑定激活状态。此示例适用于前端开发者学习MUI与Vue.js的结合使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

现在有这么需求,看效果图,大家都秒懂!

我这边ui模板用的mui的,点击每个tabbar的儿子div,有蓝色

代码如下:

<template>
    <div>
         <div class="mui-scroll-wrapper mui-slider-indicator mui-segmented-control mui-segmented-control-inverted myca">
    <div class="mui-scroll">
        <a :class="['mui-control-item',{'mui-active':index==item.id||index==0}]" v-for="(item,index) in tabarList" :key="item.id">
            {{item.name}}
        </a>
    </div>
</div>   
    </div>
</template>
复制代码

tabarList是ajax返回过来的数组,然后绑定到data的tabarList里面,然后需要绑定key,如果是渲染展示,不操作的列表是不需要key的,添加,删除等操作都需要绑定key,养成好习惯,还是加上key吧,这边key绑定的ajax的id值,然后重头戏来了! 因为mui-control-item是不变的,mui-active是变的,所以这边采用数组格式包对象,数组方括号[],对象花括号{}. 然后我们在 {'mui-active':index==item.id||index==0}],这边判断的条件是当前点击的index和后台的id 是否相等,但是还没完,因为我们要页面一加载,就要给第一个div儿子绑定上active,所以这边弄个||让index为0,这边我是考感觉的,自己瞎搞的,就出来了.....

如果做得不对,请指教,我也是个垃圾新手,加油吧!

1. 要创建一个包含下拉框和文本框等表单元素的Vue组件,首先你需要在HTML模板部分设置基础结构,比如使用`<form>`标签包裹所有表单元素: ```html <template> <div> <form @submit.prevent="handleFormSubmit"> <!-- 下拉框示例 --> <select v-model="selectedOption" @change="optionChanged"> <option v-for="(option, index) in options" :key="index" :value="option.value">{{ option.label }}</option> </select> <!-- 文本框示例 --> <input type="text" v-model="username" placeholder="请输入用户名"> <!-- 其他表单元素... --> <button type="submit">提交</button> </form> </div> </template> ``` 2. 对于`v-modal`的使用,通常配合`vuetify`这样的UI库,你可以设置一个布尔变量来控制模态框的显示隐藏,并在需要的地方打开它: ```html <template> <v-dialog v-model="showModal" max-width="500px"> <!-- 模态内容 --> </v-dialog> </template> <script> export default { data() { return { showModal: false, // ...其他数据... }; }, methods: { handleModalShow() { this.showModal = true; }, // ...其他方法... } } </script> ``` 3. 使用`v-bind:class`和`v-bind:style`可以动态地给元素添加或改变CSS名和内联样式。例如: ```html <div :class="{ active: isActive }" :style="{ backgroundColor: selectedColor }"></div> ``` 这里的`:class="{ active: isActive }"`会在`isActive`属性变化时切换名,`:style="{ backgroundColor: selectedColor }"`会根据`selectedColor`的数据值设置背景色。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值