React 设计模式~容器组件/不受控制的受控组件~

react 设计模式~容器组件/不受控制的受控组件~

不受控制的组件

这种模式意味着 react 不控制表单数据,dom 保存表单状态。

访问 dom 时,必须使用 useref 钩子设置 ref 属性。

・src/components/uncontrol-form.jsx

import react from "react";export const uncontrolledform = () => {  const nameinputref = react.createref();  const ageinputref = react.createref();  console.log("renedering");  const submitform = (e) => {    console.log(nameinputref.current.value);    console.log(ageinputref.current.value);    e.preventdefault();  };  return (                            );};

登录后复制受控组件

此模式意味着 react 使用 usestate 钩子控制表单数据。

我们可以完全控制输入值并实时更新。

import React, { useEffect, useState } from "react";export const ControlledForm = () => {  const [errorMessage, setErrorMessage] = useState("");  const [name, setName] = useState("");  const [age, setAge] = useState();  useEffect(() => {    if (name.length < 1) {      setErrorMessage("name can not be empty");    } else {      setErrorMessage("");    }  }, [name]);  return (          {errorMessage&& 

{errorMessage}

} setName(e.target.value)} /> setAge(e.target.value)} /> );};

登录后复制

以上就是React 设计模式~容器组件/不受控制的受控组件~的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2668241.html

(0)
上一篇 2025年3月7日 12:29:03
下一篇 2025年2月18日 07:44:24

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 克隆 Netflix 以提升您的前端技能

    作为一名主要专注于后端的开发人员,我一直觉得我的前端技能需要一些改进。为了测试这一点,我决定通过使用 vue.js 3 和 vite 构建 netflix 克隆来挑战自己。在这篇文章中,我将分解项目结构、关键组件,并分享我的学习经验。 项目…

    2025年3月7日
    200
  • 为多租户应用程序实施 ASPNET Identity:最佳实践

    构建多租户应用程序带来了独特的挑战,特别是在管理跨多个租户的用户身份验证和授权时。在本文中,我将引导您了解如何在多租户环境中实现 asp.net identity,同时遵循最佳实践以确保可扩展性、安全性和可维护性。 什么是多租户应用程序? …

    2025年3月7日
    200
  • 使用 Bash 脚本简化您的日常任务:实用指南

    Bash 脚本对于在计算机上自动执行日常操作和任务非常有用。以下是一些可以使用 Bash 脚本自动执行的常见任务示例: 文件管理: 根据特定模式一次重命名多个文件。根据特定条件移动、复制或删除文件和目录。根据文件类型或元数据将文件 http…

    2025年3月7日
    200
  • 了解 JavaScript 事件循环:初学者指南

    事件循环是 JavaScript 运行时环境的核心组件,对于执行异步任务至关重要。它持续监控两个主要结构:调用堆栈和事件队列。 调用堆栈 调用堆栈是一种后进先出(LIFO)数据结构,用于存储当前正在执行的函数。当一个函数被调用时,它被添加到…

    2025年3月7日
    200
  • 起重面试问答

    1. javascript 中什么是提升? 答案: 提升是执行上下文创建阶段为变量和函数分配内存的过程。在此过程中,为变量分配了内存,并为变量分配了值 undefined。对于函数,整个函数定义存储在内存中的特定地址,并且对其的引用放置在该…

    2025年3月7日
    200
  • 如何使用 Tailwind CSS 设置 os Nextjs

    要使用 tailwind css 设置 next.js,请按照以下步骤操作: 第 1 步:创建一个新的 next.js 项目 如果您尚未创建 next.js 项目,您可以使用 create-next-app 创建一个项目。 npx crea…

    2025年3月7日
    200
  • Turborepo 与 Nx:哪个最适合 Monorepo?

    在现代开发的世界中,单一存储库由于能够将多个项目联合到一个存储库中而越来越受欢迎。这使得管理依赖关系、团队协作和自动化变得更加容易。通常选择处理 monorepo 的两个著名工具是 turborepo 和 nx。 这两个工具都旨在提高 mo…

    2025年3月7日
    200
  • 理解 JavaScript 中的 Promise 和 Promise Chaining

    什么是承诺? javascript 中的 promise 就像你对未来做某事的“承诺”。它是一个对象,表示异步任务的最终完成(或失败)及其结果值。简而言之,promise 充当尚不可用但将来可用的值的占位符。 承诺国家 promise 可以…

    2025年3月7日
    200
  • 4 月份值得关注的 Web 开发趋势

    当我们迈入 2024 年时,Web 开发的格局继续以前所未有的速度发展。从新技术到不断变化的用户期望,开发人员必须保持领先地位,以创造引人入胜、高效且易于访问的网络体验。以下是今年影响网络开发的一些主要趋势。 服务器端渲染 (SSR) 和静…

    2025年3月7日
    200
  • 这是我如何在 jQuery Datatable 中实现基于游标的分页

    在 web 应用程序中处理大型数据集时,分页对于性能和用户体验至关重要。标准的基于偏移量的分页(通常与数据表一起使用)对于大型数据集可能效率低下。 基于游标的分页提供了一种性能更高的替代方案,特别是在处理实时更新或大量数据加载时。在本文中,…

    2025年3月7日
    200

发表回复

登录后才能评论