美文网首页
自定义hook-副作用

自定义hook-副作用

作者: skoll | 来源:发表于2020-06-23 15:59 被阅读0次

简介

1 .自定义Hook更像是一种约定,而不是一种功能。如果函数以use开头,并且调用了其他的hook,那么就可以称之为一个自定义hook
2 .hook是一种复用状态逻辑的方式,但是他不复用state本身
3 .事实上,每一次调用都有一个完全独立的state

检测窗口的宽度

1 .代码

function useWidth(props){
    const [width,setWidth]=useState(document.body.clientWidth)

    function handleChange(e){
        setWidth(document.body.clientWidth)
    }

    useEffect(()=>{
        window.addEventListener('resize',handleChange,false)

        return ()=>{
            window.removeEventListener('resize',handleChange,false)
        }
    })
    return width
    
}
export default useWidth

检测鼠标移动位置

// 封装一段检测鼠标移动的代码
function useMouse(props){
    const [isEffect,setEffect]=useState(props.isEffect)
    const [mouse,setMouse]=useState({x:0,y:0})

    // 如何从外部控制是否要执行这个操作呢?传入一个变量来控制,好像我是无法动态向他传入一个参数来改变里面的逻辑的。只有根据if判断使用另一个组件里面传入不同参数的hook

    function handleMouseMove(e){
        setMouse({
            x:e.clientX,
            y:e.clientY
        })
    }

    useEffect(()=>{
        document.documentElement.addEventListener("mousemove",handleMouseMove,false)
        return ()=>{
            document.documentElement.removeEventListener("mousemove",handleMouseMove,false)
        }
    })
    // 直接把mouseMove事件绑定在全局界面上,然后返回最后输出的结果

    return mouse
}

相关文章

  • 自定义hook-副作用

    简介 1 .自定义Hook更像是一种约定,而不是一种功能。如果函数以use开头,并且调用了其他的hook,那么就可...

  • 自定义Hook-组件状态

    强制重新渲染界面 1 .代码 2 .使用 获取dom属性 同步到本地存储 获取上一次的props,state 获取...

  • 自定义hook-事件处理

    useChange 1 .绑定表单,创建一个存储变量的数据仓库,暴露出一这个属性和操作这个属性的方法,让别的实例使...

  • hook-拖拽

    两个是完全不能借鉴对方的思路 1 .如果vue强行用react这种写法的话,出来的效果是很卡顿的。 1 .vue版本

  • Hook-的策略

    想要替换整个项目里面所有 class 自己感兴趣的方法(layoutSubviews;cellForRow;vie...

  • Hook-移动办公

    这里给出核心的hook代码,具体见

  • 插件知多少-DIP插件流程

    在PBCA中包含SMT及DIP插件两个程序,SMT在上一篇文章中<帮PCB工厂唱Hook-浅谈SMT表面安装>已详...

  • 插件化—Hook-代理

    1.什么是Hook? hook英文翻译为钩子。简单来说,hook技术就是劫持应用程序本要执行的对象或者方法,将其替...

  • 2018-11-20

    美版超声刀有副作用吗?关于超声刀副作用的套路 美版超声刀有副作用吗?关于超声刀副作用的套路。最近老有身边...

  • 还问美国超声刀副作用?谁会真的告诉你超声刀美容有副作用吗?知道后

    还问美国超声刀副作用?谁会真的告诉你超声刀美容有副作用吗?知道后惊呆!! 还问美国超声刀副作用?副作用确实会有,如...

网友评论

      本文标题:自定义hook-副作用

      本文链接:https://www.haomeiwen.com/subject/oebffktx.html