react-总结7-Hooks

Hooks

有了React Hooks,在函数式组件中,也可以使用类组件的state和组件生命周期。
基础Hooks

  1. useState 能使用状态
import React,{ fragment,useState } from 'react'

export default const comp = props => {

	//const [定义状态,定义修改状态的方法] = useState(0)
	const [count,setcount] = useState(0)

	return(
		<Fragment>
			<button onClick = { () => { setCount(count+1) } }>+</button>
			<div>conut:{ count }</div>
		<Fragment/>
	)
}
  1. useEffect 能使用生命周期钩子函数
import React,{ fragment,useEffect } from 'react'

export default const comp = props => {

	useEffect(() => {//这个函数相当于compnentDidMount和componentDidUpdate和compoentWillReceiveProps 还可以做数据请求数据修改 还能做dom操作
		console.log('useEffect')
	})

	return(
		<Fragment>
			
		<Fragment/>
	)
}
  1. useContext 能使用上下文
在外面单独创建一个文件夹  创建一个上下文的函数
import { createContext } from 'react'

export const moneyContext = createContext() 
-------------------------------------------------------------
import React,{ fragment,useState } from 'react'
import { moneyContext } from ''//引入上面这个函数
import Father from ''

export default const GFather= props => {
	const [money] = useState(1000)

	return(
		<Fragment>
			<moneyContext.Provider value = { money }
			</moneyContext.Provider>
		</Fragment>
	)
}
import React,{ fragment} from 'react'
import Son from ''

export default const Father= props => {

	return(
		<Fragment>
			<Son/>
		</Fragment>
	)
}
import React,{ fragment,useContext} from 'react'
import { moneyConetext } from '' //引入上面的那个函数

export default const Son= props => {
	const value = useContext (moneyConetext )
	return(
		<Fragment>
			{ value }//就能拿到  GFather组件传递来的值了
		</Fragment>
	)
}

额外的 Hook

  1. useReducer 能使用多组件状态共享
  2. useCallback 能使用回调函数
  3. useMemo 帮我们存储一些值,避免每次重新重复计算高开销的值
  4. useRef 能使用ref
  5. useImperativeHandle 使用ref时自定义暴露给父组件的实例值
  6. useLayoutEffect 使用它来读取DOM布局并同步触发重渲染
  7. useDebugValue 可用于React开发者工具中显示自定义hook的标签
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值