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

jn建站系统高端建站收费

jn建站系统,高端建站收费,品牌官网方案,自适应网站开发文字大小如何处理做这个案例捏 因为需要用到样式,所以创建一个样式文件: //29_实战.module.css .active{text-decoration:line-through } 然后创建jsx文件,修改main文件:导入Todos,写入Todos组件 import { StrictMode } from react …

做这个案例捏

因为需要用到样式,所以创建一个样式文件:

//29_实战.module.css
.active{text-decoration:line-through
}

然后创建jsx文件,修改main文件:导入Todos,写入Todos组件

import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import Todos from './28_实战'createRoot(document.getElementById('root')).render(<StrictMode><Todos /></StrictMode>
)

Todos.jsx文件需要先写渲染组件的基本结构:

function Todos() {return (<div></div>)
}
export default Todos

观察案例,首先需要一个添加任务的文本框、点击添加任务的按钮、用value使用可控组件改变value值,记得加onChange:

return (<div><input type='text' value={msg} onChange={handleChange} /><button onClick={handleClick}>点击添加任务</button></div>)

改变value的值、使用Immer整合更改

 const [msg, setMsg] = useState('')const [list, setList] = useImmer([])const handleChange = (e) => {setMsg(e.target.value)}const handleClick = () => {setList((draft) => {draft.unshift({ id: list.length, task: msg, checked: false })})setMsg('')}

复选框功能:

 const unCompleteList = list.filter((item) => !item.checked)const completeList = list.filter((item) => item.checked)const handleChecked = (e, id) => {setList((draft) => {draft.find((item) => item.id === id).checked = e.target.checked //更改对应id的数据的复选框状态})}return(<div>{/* {未完成的列表} */}<CompleteListtitle={<h2>未完成的任务:{unCompleteList.length}个</h2>}handleChecked={handleChecked}list={unCompleteList}/>{/* {已完成的列表} */}<CompleteListtitle={<h2>已完成的任务:{completeList.length}个</h2>}list={completeList}handleChecked={handleChecked}/></div>)

列表的组件

function CompleteList({title = '',list = [],handleChecked = function () {},
}) {return (<>{title}<ul>{list.map((item) => {return (<likey={item.id}className={classNames({ [style.active]: item.checked })}><inputtype='checkbox'checked={item.checked}onChange={(e) => handleChecked(e, item.id)}/>{item.task}</li>)})}</ul></>)
}

整体的代码

import { func } from 'prop-types'
import { useState } from 'react'
import { useImmer } from 'use-immer'
import classNames from 'classnames'
import style from './29_实战.module.css'function CompleteList({title = '',list = [],handleChecked = function () {},
}) {return (<>{title}<ul>{list.map((item) => {return (<likey={item.id}className={classNames({ [style.active]: item.checked })}><inputtype='checkbox'checked={item.checked}onChange={(e) => handleChecked(e, item.id)}/>{item.task}</li>)})}</ul></>)
}function Todos() {const [msg, setMsg] = useState('')const [list, setList] = useImmer([])const unCompleteList = list.filter((item) => !item.checked)const completeList = list.filter((item) => item.checked)const handleChange = (e) => {setMsg(e.target.value)}const handleClick = () => {setList((draft) => {draft.unshift({ id: list.length, task: msg, checked: false })})setMsg('')}const handleChecked = (e, id) => {setList((draft) => {draft.find((item) => item.id === id).checked = e.target.checked //更改对应id的数据的复选框状态})}return (<div><input type='text' value={msg} onChange={handleChange} /><button onClick={handleClick}>点击添加任务</button>{/* {未完成的列表} */}<CompleteListtitle={<h2>未完成的任务:{unCompleteList.length}个</h2>}handleChecked={handleChecked}list={unCompleteList}/>{/* {已完成的列表} */}<CompleteListtitle={<h2>已完成的任务:{completeList.length}个</h2>}list={completeList}handleChecked={handleChecked}/></div>)
}
export default Todos

效果:

http://www.yayakq.cn/news/264217/

相关文章:

  • 爱站网站长seo综合查询工具做外贸没有网站需要什么条件
  • 如何做平台推广赚钱推广优化
  • 丹阳火车站对面规划浙江省建设厅网站首页
  • 网站导航图怎么做的详细步骤国外网站做acm题目比较好
  • 制作华为手机网站建设规划书做网站需要的资料
  • 自己可以做微网站吗大学生跨境电商策划书范文
  • 东莞市国外网站建设哪家好石家庄网站优化公司
  • 网站建设的需求是什么wordpress同步博客插件
  • wordpress设置百度站长主动推送如何创建wordpress数据库文件夹
  • 平湖网站建设公司克网站设计机构图
  • 怎样做商业网站平台大型门户网站建设效果
  • 房地产新闻建发seo两个域名一个网站有影响吗
  • 做微商去哪些社交网站做网站电话说辞
  • 搜索型网站wordpress 响应慢
  • 网站建设英文怎么写wordpress-5.2.1
  • pc网站如何做移动适配河东网站建设公司
  • 漯河做网站推广网络平台运营方案
  • 桂林建站南京自助建站软件
  • 怎样在局域网做网站南京注册公司流程
  • 大连建设集团招聘信息网站南京网站制作公司
  • 大学营销型网站建设实训课程做网站公司名字推荐
  • 做网站要不要营业执照成都网站快速开发
  • 网站栏目页描述怎么写微信建立免费网站吗
  • 国际购物网站排名平面设计手机作图软件
  • html网站源码黄页网
  • 用源码做网站wordpress 链接修改
  • 网站后台管理功能怎么注册公司需要多少钱
  • 网站建设管理中se是什么意思涿州是住房和城乡建设局网站
  • 新沂网站开发湖北襄阳住房保障和城市建设局网站
  • 玉山建设局网站网络公司网站优化网站建设