useState的使用

代码

const Search = (props: any) => {
// useState() 采用一个初始 state 作为参数,也可以像这样使用一个空字符串。
// 使用 state 进行交互,别忘了 import React:
// 同时它会返回包含两个值的数组,第一个值 searchTerm 表示当前 state;第二个值 setSearchTerm 是 state 的更新函数。
const [searchTerm, setSearchTerm] = React.useState("");
const handleChange = (e: any) => {
const text = e.target.value
setSearchTerm(text);
}
return (
<> <input type="text" onChange={handleChange} />
<p>
{searchTerm}
</p> </>
);
}

下游的组件要使用 state,可以将其作为 props 传递;如果下游组件要更新 state,可以向下传递一个回调处理函数。

function App() {
const [searchTerm, setSearchTerm] = React.useState("");
const list = [
{
title: "1",
context: "内容1"
},
{
title: "2",
context: "内容2"
},
{
title: "12",
context: "内容12"
}
]
const listData = list.filter(item => {
return item.title.toLowerCase().includes(searchTerm.toLowerCase())
}) const handleSearch = (text: string) => {
setSearchTerm(text);
}
return (
<div className="App">
<header className="App-header"> <Search onSearch={handleSearch} text={searchTerm}></Search>
<ul>
{
listData.map((item) => {
return <li>{item.title}/<b>{item.context}</b></li>
}
)
} </ul>
</header>
</div>
);
} const Search = (props: any) => {
const handleChange = (e: any) => {
const text = e.target.value
props.onSearch(text)//调上游传递的方法
}
return (
<> <input type="text" onChange={handleChange} />
<p>
{props.text}
</p> </>
);
}

react hook入门的更多相关文章

  1. React Hook 入门使用

    React Hook 是什么 1.没有比官网说的更好的 HOOK 1. React Hook 官方 2. 用我们自己的话说,它是一个钩子函数,用来处理组件间的状态的一个方法,暂时理解为一个高阶函数吧. ...

  2. 使用React Hook后的一些体会

    一.前言 距离React Hook发布已经有一段时间了,笔者在之前也一直在等待机会来尝试一下Hook,这个尝试不是像文档中介绍的可以先在已有项目中的小组件和新组件上尝试,而是尝试用Hook的方式构建整 ...

  3. React Hook上车

    React Hook 是 v16.8 的新功能,自诞生以来,受到广泛的好评,在 React 版本更新中具有里程碑的意义.现在都2020年了,再不上车 React Hook 就真的 out 了... H ...

  4. React.js入门笔记

    # React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...

  5. 基于Nodejs生态圈的TypeScript+React开发入门教程

    基于Nodejs生态圈的TypeScript+React开发入门教程   概述 本教程旨在为基于Nodejs npm生态圈的前端程序开发提供入门讲解. Nodejs是什么 Nodejs是一个高性能Ja ...

  6. 2015某编程网易语言vip课堂全套教程 包含post,hook入门到精通等

    2015某编程网易语言vip课堂全套教程 包含post,hook入门到精通等  官方论坛弄来的  如果在官方下载需要权限的  挺不错教程 想学习易语言入门到精通 post hook  js改写的可以看 ...

  7. Hook入门

    Hook入门 2014-07-24 基本概念 Windows消息机制 Hook(钩子) 运行机制 核心函数 C# hook示例 基本概念[1] Windows消息机制[5] Windows操作系统是建 ...

  8. 【转载】React初学者入门须知

    http://www.oschina.net/news/75530/9-things-every-reactjs-beginner-should-know react.js入门学习 看了一遍,没什么特 ...

  9. 小白也能看懂的插件化DroidPlugin原理(二)-- 反射机制和Hook入门

    前言:在上一篇博文<小白也能看懂的插件化DroidPlugin原理(一)-- 动态代理>中详细介绍了 DroidPlugin 原理中涉及到的动态代理模式,看完上篇博文后你就会发现原来动态代 ...

  10. React Native入门教程 3 -- Flex布局

    上一篇文章中介绍了基本组件的使用 React Native入门教程(笔记) 2 – 基本组件使用及样式 本节内容将继续沿用facebook官方例子介绍如何使用Flexbox布局把界面设计的多样化. 转 ...

随机推荐

  1. 我为什么要放弃RESTful,选择拥抱GraphQL

    背景 REST作为一种现代网络应用非常流行的软件架构风格,自从Roy Fielding博士在2000年他的博士论文中提出来到现在已经有了20年的历史.它的简单易用性,可扩展性,伸缩性受到广大Web开发 ...

  2. java基础(六):面向对象

    面向对象 面向对象:以类的方式组织代码,以对象组织数据 特性: 封装 继承 多态 类:抽象概念 对象:具体事物 面向对象是java学习的重中之重,毕竟java就是一个面向对象的语言~ 类 = 属性+方 ...

  3. CentOS7 登录到控制台后无法联网

    登录到控制台, ping 不通网络 解决方法 通过命令找到网卡的配置文件见 ll /etc/sysconfig/network-scripts/ | grep ifcfg-en 编辑配置文件 vi i ...

  4. AEDR8300:光电编码程序构思

    一.实验 1.光电反射理论是经过码盘的window时,电压变低,经过bar时,电压为高,这样可以通过检测到的脉冲数,来进行速度的获取.但是实际并不是这样, 反馈回来的信号是周期性的,经过试验发现,可以 ...

  5. SpringMVC的数据绑定与视图解析

    SpringMVC的数据绑定: 在后端直接得到前端的HTTP中的数据. HTTP请求中的传输的参数都是String类型,Handler业务方法中的参数是开发者指定的数据类型,int Integer,, ...

  6. Zstack和vmware的初步印象对比

    先不说话,直接上截图吧,vmware的: zstack的: 读者不知道看出什么名堂没有?把浏览器缩放调到50%,vmware的产品线两页截屏还装不下:zstack虽然也要两屏,但都是块块,大致数了数, ...

  7. ChatGPT调研分析与应用场域结合构想

    作者:京东科技 胡骏 摘要 1. ChatGPT调研分析 2022年11月30日,ChatGPT横空出世,在全球范围内形成了热烈的讨论.根据Similarweb的数据,今年1月,平均每天约有1300万 ...

  8. FreeFileSync:开源的文件同步工具 | Linux 中国

    转载知乎: https://zhuanlan.zhihu.com/p/194778373

  9. ubuntu lnmp环境搭建 LNMP(Ubuntu 20.04 + Nginx + PHP 7.1 + Mysql5.7)

    转载csdn: ubuntu lnmp环境搭建 LNMP(Ubuntu 20.04 + Nginx + PHP 7.1 + Mysql5.7)_ts3211的博客-CSDN博客_lnmp环境搭建

  10. group by 、concat_ws()、 group_caoncat()的使用

    group系列 之前觉得这里简单不需要再进行总结了.后来发现还是需要总结巩固一下,还是有一些方法之类的之前未使用过.这里来重新整理,记录一下. group by 将表中的数据根据某个条件进行分组. 比 ...