lzj01231 2024-01-13 21:43 采纳率: 70.6%
浏览 4

uni-table中的checkbox-group会打乱uni-table的格式怎么办?

uni-table中的checkbox-group会打乱uni-table的格式怎么办?(checkbox-group放table外面不会改变样式,但是我不想使用@click,checkbox的@change又用不了)求修复样式


<uni-table :border="false">
    <!-- 表头行 -->
    <uni-tr>
        <uni-th align="center" width="100"></uni-th>
        <uni-th align="center" width="70">早餐</uni-th>
        <uni-th align="center" width="70">午餐</uni-th>
        <uni-th align="center" width="70">晚餐</uni-th>
    </uni-tr>
    <!-- 表格数据行 -->
    <uni-tr v-for="(date, index) in replayDates" :key="index">
        <uni-td align="center">{{ date }}</uni-td>
        <checkbox-group>
            <uni-td align="center" >
                <checkbox value="breakfast" :checked="form.mealsStatus[index].breakfast" @click="CheckboxClick(index, 'breakfast')"></checkbox>
            </uni-td>
            <uni-td align="center">
                <checkbox value="lunch" :checked="form.mealsStatus[index].lunch" @click="CheckboxClick(index, 'lunch')"></checkbox>
            </uni-td>
            <uni-td align="center">
                <checkbox value="dinner" :checked="form.mealsStatus[index].dinner" @click="CheckboxClick(index, 'dinner')"></checkbox>
            </uni-td>
        </checkbox-group>
    </uni-tr>
</uni-table>

checkbox-group放里面

checkbox-group放外面

  • 写回答

2条回答 默认 最新

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2024-01-13 22:44
    关注

    所有内容均由人工智能模型输出,其内容的准确性和完整性无法保证,不代表我的态度或观点。


    该回答引用通义千问大模型,仅提供参考,不保证完全正确
    目前为通义千问大模型专栏,版本:V2.1.1(2023.12.16)
    在uni-app中,checkbox-group组件并不适用于直接嵌套在uni-table的单元格(uni-td)内,这可能会导致样式错乱。为了解决这个问题并保持表格的格式,您可以采用以下方式:

    1. 将checkbox与数据行进行关联,不使用checkbox-group。
    2. 直接在checkbox上使用v-model:value绑定状态。
    <uni-table :border="false">
        <!-- 表头行 -->
        <uni-tr>
            <uni-th align="center" width="100"></uni-th>
            <uni-th align="center" width="70">早餐</uni-th>
            <uni-th align="center" width="70">午餐</uni-th>
            <uni-th align="center" width="70">晚餐</uni-th>
        </uni-tr>
        <!-- 表格数据行 -->
        <uni-tr v-for="(date, index) in replayDates" :key="index">
            <uni-td align="center">{{ date }}</uni-td>
            <uni-td align="center">
                <checkbox value="breakfast" :checked="form.mealsStatus[index].breakfast" @change="handleCheckboxChange(index, 'breakfast')"></checkbox>
            </uni-td>
            <uni-td align="center">
                <checkbox value="lunch" :checked="form.mealsStatus[index].lunch" @change="handleCheckboxChange(index, 'lunch')"></checkbox>
            </uni-td>
            <uni-td align="center">
                <checkbox value="dinner" :checked="form.mealsStatus[index].dinner" @change="handleCheckboxChange(index, 'dinner')"></checkbox>
            </uni-td>
        </uni-tr>
    </uni-table>
    

    然后在Vue实例的methods中定义处理复选框变化的方法:

    export default {
      // ...
      methods: {
        handleCheckboxChange(index, mealType) {
          this.$set(this.form.mealsStatus[index], mealType, !this.form.mealsStatus[index][mealType]);
        },
      },
      // ...
    }
    

    这样您就可以在保持表格样式的同时,正确响应复选框的状态变化了。


    图片转文字可能造成误差,不代表模型真实水平

    评论

报告相同问题?

问题事件

  • 创建了问题 1月13日

悬赏问题

  • ¥30 eclipse开启服务后,网页无法打开
  • ¥30 雷达辐射源信号参考模型
  • ¥15 html+css+js如何实现这样子的效果?
  • ¥15 STM32单片机自主设计
  • ¥15 如何在node.js中或者java中给wav格式的音频编码成sil格式呢
  • ¥15 不小心不正规的开发公司导致不给我们y码,
  • ¥15 我的代码无法在vc++中运行呀,错误很多
  • ¥50 求一个win系统下运行的可自动抓取arm64架构deb安装包和其依赖包的软件。
  • ¥60 fail to initialize keyboard hotkeys through kernel.0000000000
  • ¥30 ppOCRLabel导出识别结果失败