当前位置: 首页 > news >正文

vue前端代码作业——待办事项

美化样式示意图:

后端IDEA代码示意图:

代码解释:

1. isAllChecked 计算属性的作用

isAllChecked 用于实现 “全选 / 全不选” 功能,它是一个 双向绑定 的计算属性(因为 v-model 需要同时支持读取和设置值):

  • get 方法:用于读取全选状态(判断是否所有任务都已完成)。
  • set 方法:用于设置全选状态(当用户勾选全选框时,批量更新所有任务的完成状态)。

2. 为什么必须同时有 get 和 set

  • 单向计算属性:如果计算属性只需要读取(例如单纯的统计值),可以只写 get(或直接写成函数形式)。
  • 双向绑定(v-model:当计算属性用于 v-model 时,必须同时提供 get 和 set,因为 v-model 需要:
    • 通过 get 获取当前值(决定复选框是否选中)。
    • 通过 set 设置新值(当用户修改复选框时,更新数据源)。

如果缺少 set 方法,会导致 v-model 报错,因为无法处理用户对复选框的修改操作。

3. 代码奇数偶数列的颜色逻辑

li:nth-child(even) 是 CSS 中一种伪类选择器,它的作用是 匹配父元素(这里是 ul)中第偶数个子元素(从 2 开始,即 2、4、6…)的 li 元素。以下是具体解释:
:nth-child(even) 的逻辑:
even 表示偶数,它会遍历父元素(ul)的所有子元素(li),为位置是偶数的 li 元素应用样式。例如,第一个 li 位置是 1(奇数),不匹配;第二个 li 位置是 2(偶数),匹配;第三个位置是 3(奇数),不匹配,以此类推。因此,只有双数位置的 li 会被选中并应用 background-color: lavender 样式,呈现出淡紫色背景。
与代码的关联:
你的代码通过 v-for 循环生成多个 li 元素,这些 li 作为 ul 的子元素,会按顺序排列。浏览器在渲染时会为每个 li 计算位置,li:nth-child(even) 就会精准匹配到双数位置的 li,从而只让双数的任务名称(列表项)显示颜色。
如果想让奇数位置的 li 也有样式(如区分奇偶行),可以补充 li:nth-child(odd) 选择器(odd 表示奇数),例如:

li:nth-child(even) {
 background-color: lavender; /* 偶数行背景色 */
 } 
li:nth-child(odd) {
 background-color: #f0f0f0; /* 奇数行背景色 */ 
}

4.“全部/已完成”与“清除已完成”的左右对齐格式:

  1. 给父容器添加 align-items: center 确保内容垂直居中对齐。
  2. 移除冗余的 padding-right: 60px,通过 justify-content: space-between 让两个子元素自动左右分布。

     3.添加 padding: 10px 0 增加上下内边距让布局更舒适。

<div style="display: flex; justify-content: space-between; align-items: center; padding: 10px 0;">
  <div>
    <input type="checkbox" v-model="isAllChecked" style="margin-right: 8px;">
    <span>已完成{{finishedNum}} /全部{{renwus.length}}</span>
  </div>
  <button @click="clearFinished" style="padding: 6px 12px; border: 1px solid #ddd; border-radius: 4px; background-color: #fff; cursor: pointer;">
    清除已完成
  </button>
</div>

相关文章:

  • [CSAPP] 9.8 内存映射 | 虚拟内存 | 页表 | 物理内存 | 写时拷贝机制
  • 使用 Frida Stalker 反 OLLVM 算法还原
  • 代码随想录算法训练营第三十二天 | 509.斐波那契数 70.爬楼梯 746.使用最小花费爬楼梯
  • 基于YOLO11的违禁物品检测分析系统
  • 【sgThumbPreviewTip】自定义组件:缩略图预览组件,移入缩略图等待1秒后出现浮动气泡框显示更大的缩略图或预览播放视频
  • HTTP协议手写服务器
  • 设计模式之适配器模式(二):STL适配器
  • RISC-V AIA学习3---APLIC 第二部分(APLIC 中断域的内存映射控制区域)
  • 第五章.图论
  • iOS GCD
  • C++ STL常用算法之常用排序算法
  • Vue3+Vite获取原始文版并展示在页面内
  • 030-gprof
  • 群体智能优化算法-算术优化算法(Arithmetic Optimization Algorithm, AOA,含Matlab源代码)
  • 清晰易懂的Trae实现为AI编程从安装到实战开发ToDoList
  • Redis:持久化 RDB快照 AOF日志
  • leetcode每日一题:使所有字符相等的最小成本
  • Java面试黄金宝典24
  • 软考《信息系统运行管理员》- 6.2 信息系统硬件的安全运维
  • Oracle数据库数据编程SQL<2.1 DDL、DCL表、列及约束>
  • 黄石网站建设(乐云践新)/最近国际新闻大事
  • 路由器做服务器做网站/最近三天的新闻大事简短
  • 主流软件开发工具/googleseo优化
  • 电脑从做系统怎么找回以前登录的网站/怎么在百度上注册店铺
  • 直播型网站开发/关键词优化快排
  • 东台专业做网站/产品互联网推广