【taro react】 ---- 常用自定义 React Hooks 的实现【四】之遮罩层

这篇具有很好参考价值的文章主要介绍了【taro react】 ---- 常用自定义 React Hooks 的实现【四】之遮罩层。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 问题场景

在实际开发中我们会遇到一个遮罩层会受到多个组件的操作影响,如果我们不采用 redux 之类的全局状态管理,而是选择组件之间的值传递,我们就会发现使用组件的变量来控制组件的显示和隐藏很不方便,更不要说像遮罩层这样一个项目多处使用的公共组件,他的隐藏和显示也只能放到某一个模块的 redux 中,还要解决遮罩层在ScrollView内,会在IOS显示不全,等等bug的问题,可以说烦不胜烦。文章来源地址https://www.toymoban.com/news/detail-726945.html

2. 解决办法

  1. 使用当前页面模块的 redux 来管理当前页面中的遮罩层;
  2. 使用 useReducer 来管理当前页面中的遮罩层;
  3. 使用 hook 来实现遮罩层的清除和添加。

3. 方案分析

  1. 方案一和方案二其实原理都一样,就是将控制遮罩层的变量集中管理,但是缺点也很明显,就是我们需要多少遮罩层,就会创建多少个变量,维护这些变量来控制遮罩层的显示与隐藏。维护多变量控制多遮罩层
  2. 方案三我采用的是使用一个变量来接收遮罩层,通过改变变量的值来实现遮罩层的显示与隐藏。维护单一变量

4. 保存 hook 初始化配置

  1. 在 hook 初始化时,使用 useRef 对初始化配置进行记录;
  2. 防止对 options 改变时,没有及时更新,因此监听 options,发生变化时,对初始化配置进行更新。
  let

到了这里,关于【taro react】 ---- 常用自定义 React Hooks 的实现【四】之遮罩层的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何写一个react自定义的hooks?

    使用过useState,也使用过ahook的useSetState,我们知道useState和useSetState左边赋值的第一个参数是接收初始值的变量和设置变量的方法,这里左边用的是数组解构实现的。所以,这里我们想一下,如何自定义一个hooks,也可以像useState和useSetState那样呢? 按我个人的理解,react自定义

    2024年03月15日
    浏览(40)
  • React的10个常用Hooks及使用场景

    React是一款非常流行的JavaScript库,它提供了许多Hooks,用于管理函数组件的状态和生命周期。下面是React的每个Hooks的使用场景和示例: useState用于在函数组件中管理状态。 它返回一个包含当前状态和一个更新状态的函数的数组。更新状态的函数可以接受一个新的值,并更新状

    2024年02月09日
    浏览(36)
  • React的7个常用Hooks及使用场景(含示例)

    React是一款非常流行的JavaScript库,它提供了许多Hooks,用于管理函数组件的状态和生命周期。下面是React的每个Hooks的使用场景和示例: useState用于在函数组件中管理状态。 它返回一个包含当前状态和一个更新状态的函数的数组。更新状态的函数可以接受一个新的值,并更新状

    2024年02月10日
    浏览(33)
  • react18 hooks自定义移动端Popup弹窗组件RcPop

    基于 React18 Hooks 实现手机端弹框组件 RcPop react-popup 基于 react18+hook 自定义多功能弹框组件。整合了 msg/alert/dialog/toast及android/ios 弹窗效果。支持 20+ 自定义参数、 组件式+函数式 调用方式,全方位满足各种弹窗场景需求。 在需要使用弹窗的页面引入组件。 RcPop支持  组件式+函

    2024年02月15日
    浏览(42)
  • Taro React组件开发(8) —— RuiUploadImages 多图片上传组件【Promise.all 实现】

    1. 需求分析 使用 Taro.chooseImage 实现图片的选择; 使用 Taro.uploadFile 实现图片的上传; 由于 Taro.uploadFile API 的 filePath 只能是一张图片的路径,因此上边两个 API 只能实现单图图片上传。 2. 上传图片实现 组装完整的上传接口地址【 ${ server_env_url }${ config.default[data.url] } 】; 获取

    2023年04月24日
    浏览(49)
  • 前端基本功 用 React Hooks + Antd 实现一个 Todo-List

    To-do list(待办事项列表)是用来记录和管理要完成的任务、活动或项目的列表。它是一种简单而常见的工具,用于帮助人们组织和安排日常生活中的任务。每当您有一项任务需要完成或者要记住某些事情时,您可以将它添加到待办事项列表中。 学习前端的一些新知识时,经

    2024年02月17日
    浏览(37)
  • 【React】React Hooks解析

    React 16.8 + 为什么需要Hook? Hook是 React 16.8 的新增特性,它可以让我们在不编写class的情况下使用state以及其他的React特性(比如生命周期) 我们先来思考一下class组件相对于函数式组件有什么优势?比较常见的是下面的优势: class组件可以 定义自己的state ,用来 保存组件自己内

    2024年02月11日
    浏览(55)
  • React Hooks ——性能优化Hooks

    Hooks从语法上来说是一些函数。这些函数可以用于在函数组件中引入状态管理和生命周期方法。 简洁 从语法上来说,写的代码少了 上手非常简单 基于函数式编程理念,只需要掌握一些JavaScript基础知识 与生命周期相关的知识不用学,react Hooks使用全新的理念来管理组件的运作

    2024年02月06日
    浏览(43)
  • 【前端知识】React 基础巩固(四十二)——React Hooks的介绍

    Hook 是 React 16.8 的新增特性,它可以让我们在不编写class的情况下使用state以及其他的React特性(比如生命周期)。 class组件 VS 函数式组件: class的优势: class组件可以定义自己的state,用来保存组件自己内部的状态;而函数式组件不可以,因为函数每次调用都会产生新的临时

    2024年02月14日
    浏览(64)
  • react中hooks分享

    在计算机程序设计中,钩子一词涵盖了一系列技术,这些技术用来通过拦截函数调用、消息或在软件组件之间传递的事件来改变或增加操作系统、应用程序或其他软件组件的行为。处理这些被截获的函数调用、事件或消息的代码称为“hook”。 在react中,有两种组件:类(cl

    2024年02月14日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包