您的位置:首页 > 娱乐 > 明星 > 免费下载小程序_百度seo教程_龙岗seo优化_kol推广

免费下载小程序_百度seo教程_龙岗seo优化_kol推广

2024/12/24 2:01:23 来源:https://blog.csdn.net/2301_80044589/article/details/142336680  浏览:    关键词:免费下载小程序_百度seo教程_龙岗seo优化_kol推广
免费下载小程序_百度seo教程_龙岗seo优化_kol推广

首先,明确一下,react在16.8之前,一直都是无状态组件。如果有人告诉你其在react16.8前使用函数组件进行状态管理,那他大概率是在胡扯

函数组件的定义

 函数组件的定义是用函数定义,相对于类组件,函数组件更加的轻量和灵活、

import React from 'react'export default function App() {return (<div>App</div>)
}

是不是比类组件要简单多了 我们现在来看状态的定义和修改(tsx写法 用js就去除<string>)

状态定义和修改

export default function App() {const [username,setusername] =useState<string>('')return (<div>{username}<input value={username} onChange={(e)=>setusername(e.target.value)}></input></div>)
}

这个代码,是用useState 进行的状态定义 这个是一个 react的 hooks 如果感兴趣可以看源码

 如果要了解,可以查看我之前的vue自定义hooks  这个hooks返回一个数组数组第一个是变量名 第二个是修改变量的方法

接口的请求

要先明确一点 react函数组件是没有生命周期的,那么想要在加载页面的时候进行接口请求,我们要怎么办呢? 这里需要使用另一个hooks useEffect

  interface UserType{name?:stringpassword?:string}const [userlist,setuserlist] =useState<Array<UserType>>([])let getdata:()=>Promise<void>=async ()=> {let data:UserType= await axios.get(`https://api.github.com/users/`)setuserlist([...userlist,data])}useEffect(()=>{getdata()})

接口请换成自己的,我这个仅供参考 如果是jsx 不需要定义类型可以去除 整个 interface

()=>promise  Usertype 

onst [userlist,setuserlist] =useState<Array<UserType>>([])let getdata=async ()=> {let data= await axios.get(`https://api.github.com/users/`)setuserlist([...userlist,data])}useEffect(()=>{getdata()})

如果开发过程中 有什么关于react的 函数组件方面的问题,可以私信我

如果我的文章可以帮助到各位,请给博主一个免费的关注和一个赞

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com