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

vue小案例

vue小案例

组件化编码流程

1.拆分静态组件,按功能点拆分
2.实现动态组件
3.实现交互

在这里插入图片描述

文章目录

      • vue小案例
      • 组件化编码流程
          • 1.父组件给子组件传值
          • 2.通过APP组件给子组件传值。
          • 3.案例实现
          • 4.项目小细节

1.父组件给子组件传值

父组件给子组件传值
1.在父组件中写好要传的值,在子组件中接受

传值

 <List :todoList="todoList"></List>

接受

props:['todoList']
2.通过APP组件给子组件传值。

1.在app的methods方法中添加一个方法receive用于接受子组件传递的值。
2.在子组件中通过props接受app组件传递的方法receive。
3.调用receive方法传递子组件想要传递的值。
4.在app父组件中接受子组件传递的值。

在app的methods方法中添加一个方法receive用于接受子组件传递的值

methods:{receive(res){this.todoList.unshift(res)}}

在子组件中通过props接受app组件传递的方法receive

 props:['receive'],
//传值this.receive(addObj)

在app父组件中接受子组件传递的值。

 receive(res){this.todoList.unshift(res)}

在这里插入图片描述

3.案例实现
<template> <div><div class="content"><Header :receive="receive"></Header><List :todoList="todoList" :handcheck="handcheck" :deleteHand="deleteHand"></List><Footer :todoList="todoList" :isALL="isALL"></Footer></div></div>
</template><script>
import Footer from './components/Footer.vue'
import List from './components/List.vue'
import Header from './components/Header.vue'
export default {name:'App',data(){return{todoList:[{id:'001',title:"睡觉",done:true},{id:'002',title:"学习",done:true},{id:'003',title:"喝酒",done:false},]}},components:{Footer,Header,List},methods:{// 添加receive(res){this.todoList.unshift(res)},// =改变handcheck(id){console.log(id)this.todoList.forEach((todo)=>{if(todo.id===id)todo.done=!todo.done})},deleteHand(id){this.todoList=this.todoList.filter((todo)=>{return todo.id!==id})},isALL(done){this.todoList.forEach((todo)=>{todo.done=done})}}
}
</script><style >.content{width: 500rpx;height: 500rpx;border-radius: 20rpx;border: 5rpx solid black;}
</style>
<template><div><Item v-for="item in todoList" :key="item.id" :todo="item" :handcheck="handcheck" :deleteHand="deleteHand"></Item></div>
</template><script>
import Item from './Item.vue'
export default {name:"List",components:{Item},props:['todoList','handcheck','deleteHand'],
}
</script><style></style>

在这里插入图片描述

4.项目小细节

nanoid (生成唯一id)
1.下载naoid npm i nanoid,
2.使用nanoid 在项目中 import {nanoid} from ‘nanoid’,
3.使用 id:nanoid
在这里插入图片描述

http://www.lryc.cn/news/8569.html

相关文章:

  • 阅读笔记3——空洞卷积
  • CSS系统学习总结
  • 阿里一面:你做过哪些代码优化?来一个人人可以用的极品案例
  • Android NFC 标签读写Demo与历史漏洞概述
  • 亿级高并发电商项目-- 实战篇 --万达商城项目 六(编写角色管理、用户权限(Spring Security认证授权)、管理员管理等模块)
  • 博视像元获近5000万元融资,主攻半导体前道及锂电高端部件供应
  • SpringCloud-断路器Hystrix
  • JavaScript精简笔记
  • MySQL常用函数汇总
  • 100M网口客户电脑插上网线就断线,自己工厂正常,是什么问题导致?
  • 从零开始学习无人机 00 硬件配置
  • 免翻在Chrome上使用新必应(New Bing)聊天机器人
  • LA@特征值和特征向量
  • transpose代码学习
  • 【Redis】Redis 常用数据类型操作 ② ( 数据库操作 | 切换数据库 | 查询当前数据库键个数 | 清空当前数据库 | 清空所有数据库 )
  • 最简单的物体识别例子
  • 指针——“C”
  • 学习 Linux 内核书籍推荐
  • 深圳硬件黑客松活动,开放报名!
  • 力扣sql简单篇练习(十七)
  • Linux网络技术学习(六)—— 网络设备初始化(II)
  • 一手教你如何搭建Hadoop基于Zookeeper的集群(5台主机)
  • Spring Cloud是什么?怎么理解Spring Cloud?
  • robotframework + selenium自动化测试常见的问题
  • 2023春招java面试题及答案
  • QT+OpenGL光照
  • OpenCV-PyQT项目实战(7)项目案例03:鼠标框选
  • vue2版本《后台管理模式》(上)
  • C++与C基础重叠部分
  • 神经网络基础部件-卷积层详解