Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在用forwardRef定义的子组件中调用函数

在用forwardRef定义的子组件中调用函数
EN

Stack Overflow用户
提问于 2019-01-13 12:07:30
回答 1查看 571关注 0票数 0
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
                                      App  [4]
                                       |
                     ___________________________________
                    |                                   |
                  Child1   [3]                        Child2  [5]
                    |                                   |
                  Child1a  [2]                function displayProperty()  [6]
                    |
            function onSetProperty()  [1]

我刚刚开始学习React,并尝试不使用Redux状态管理来理解组件之间的内置通信通道。在调用子组件上的函数时,有人能提供一些关于最佳实践的指导吗?

我目前使用useRefuseImperativeMethods的方法是可行的,但我不确定这是否是一个最佳实践,因为docs状态“在大多数情况下都可以/应该避免使用ref的命令式代码”。

这是应该使用带有forwardRefuseImperativeMethods的那种情况吗?

当前的程序流程是:

  • 在Child1a组件中设置属性值
  • onSetProperty事件是通过Child1a => Child1 =>应用程序出现的。
  • App组件包含一个变量'const child2Ref = useRef()‘
  • Child2被定义为: const Child2 = forwardRef((props,ref) => { useImperativeMethods(ref,() => ({ displayPropertyOption(value) { console.log(The value is ${value});} ));

https://reactjs.org/docs/hooks-reference.html#useimperativemethods

EN

回答 1

Stack Overflow用户

发布于 2019-01-13 12:13:37

您总是希望状态处于最需要的/可能的组件级别。要修改该状态或在子组件中显示它,您可以将状态变量和函数(修改该状态)本身传递给调用给定函数的子组件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54172728

复制
相关文章
JAVA中调用CMD命令,并输出运行结果
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/119104.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/09
1.9K0
nohup命令–linux后台运行程序并实时查看输出
前言 前台运行程序十分的不稳定,当xshell断掉之后,程序也就断掉了。然后同学向我推荐了nohup命令,于是我就非常愉快的使用起来啦~
kirin
2021/03/15
5.2K0
java jps_java11教程–jps命令
抑制类名,JAR文件名和传递给该main方法的参数的输出,从而仅生成本地JVM标识符的列表。
全栈程序员站长
2022/11/05
1.2K0
在 Linux 上使用 jps 命令检查 Java 进程
在 Linux 中,有一些用于查看系统上运行进程的命令。进程是指由内核管理的正在进行的事件。每启动一个应用程序时,就会产生一个进程,但也有许多在计算机后台运行的进程,如保持系统时间准确的进程、监听新文件系统的进程、索引化文件的进程等。有一些可以用来监测这些进程的实用程序,比如包含在 procps-ng 包 中的程序,但它们往往都是对各种进程通用的。它们会查看计算机上的所有进程,你可以根据需要过滤结果列表。
用户9105998
2021/11/22
2.7K0
在 Linux 上使用 jps 命令检查 Java 进程
在 Linux 中,有一些用于查看系统上运行进程的命令。进程是指由内核管理的正在进行的事件。每启动一个应用程序时,就会产生一个进程,但也有许多在计算机后台运行的进程,如保持系统时间准确的进程、监听新文件系统的进程、索引化文件的进程等。有一些可以用来监测这些进程的实用程序,比如包含在 procps-ng 包 中的程序,但它们往往都是对各种进程通用的。它们会查看计算机上的所有进程,你可以根据需要过滤结果列表。在 Linux 中,可以通过 ps 命令查看进程。这是查看当前系统上运行进程最简单的方法。
用户8989785
2021/10/13
2.8K0
java jps命令使用解析
在linux环境下显示一个进程的信息大家可能一直都在使用ps命令,比如用以下命令来显示当前系统执行的java进程:
程序新视界
2022/05/06
1.5K0
Windows中jps命令无法查看java进程问题
{user}为当前登录用户名) 目录下建立一个以该 java 进程 pid 为文件名的文件,用以记录该 java 进程的一些信息。 通常是因为没有对这个文件的写入权限而导致jps命令查看不到进程
夹胡碰
2020/10/27
4.5K0
Windows中jps命令无法查看java进程问题
spark (java API) 在Intellij IDEA中开发并运行
王小雷
2018/01/02
3.8K0
spark (java API) 在Intellij IDEA中开发并运行
java程序编译命令_使用 java 命令编译运行 java 程序
java 编译的过程,就是将 java 项目从源文件变成 .class 文件的过程,而 .class 文件,最后会被加载到JVM 中运行。在 JDK bin/ 目录下,提供了 javac 命令,用于将 .java 源文件编译成 .class 字节码文件,提供了 java 命令,以 Main_Class 为入口,根据运行需要,加载相应的 class 文件到 JVM 中执行。
全栈程序员站长
2022/09/08
3.1K0
Java的jps命令使用详解
jps(Java Virtual Machine Process Status Tool)是JDK提供的一个可以列出正在运行的Java虚拟机的进程信息的命令行工具,它可以显示Java虚拟机进程的执行主类(Main Class,main()函数所在的类)名称、本地虚拟机唯一ID(LVMID,Local Virtual Machine Identifier)等信息。另外,jps命令只能显示它有访问权限的Java进程的信息。
万猫学社
2022/04/22
6.5K0
Java命令学习系列(一)——Jps
jps位于jdk的bin目录下,其作用是显示当前系统的java进程情况,及其id号。 jps相当于Solaris进程工具ps。不象”pgrep java”或”ps -ef grep java”,jps并不使用应用程序名来查找JVM实例。因此,它查找所有的Java应用程序,包括即使没有使用java执行体的那种(例如,定制的启动 器)。另外,jps仅查找当前用户的Java进程,而不是当前系统中的所有进程。
九州暮云
2019/08/21
3.7K0
jps 命令_jps只有一个jps进程
jps(全称:Java Virtual Machine Process Status Tool)是 java 提供的一个用来显示当前所有 java 进程的 pid 的命令。
全栈程序员站长
2022/11/05
3.3K0
jps 命令_jps只有一个jps进程
JPS 命令演示 & 我们只用 jps -lv
jps命令是我们安装JDK内置的指令。jps命令主要查看java进程信息。(只要我们系统配置了JDK的环境变量。我们就可以使用jps命令)
收心
2022/10/31
1.7K0
linux c程序中获取shell脚本输出
  Unix界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作。比如实现一个ping程序来测试网络的连通性,实现ping函数需要写上200~300行代码,为什么不能直接调用系统的ping命令呢?通常在程序中通过 system函数来调用shell命令。但是,system函数仅返回命令是否执行成功,而我们可能需要获得shell命令在控制台上输出的结果。例如,执行外部命令ping后,如果执行失败,我们希望得到ping的返回信息。
阳光岛主
2019/02/19
5.6K0
linux jps 命令
jps -- Java Virtual Machine Process Status Tool
微风-- 轻许--
2020/04/30
3.6K0
java环境配置及jps命令未找到
最近基于CentOS 7下安装hadoop集群,碰到了java环境变量的问题,同时也出现了jps命令无法找到的情况。简要描述一下基于CentOS 7下Java环境的配置及jps命令未找到的处理。
Leshami
2018/08/06
3.3K0
python 从subprocess运行的子进程中实时获取输出
shell =false 意思是command 使用的不是linux shell指令,如果要用shell 指令如ls 要将false 变成true, 通过指定stderr=subprocess.STDOUT,将子程序的标准错误输出重定向到了标准输出,以使我们可以直接从标准输出中同时获取标准输出和标准错误的信息。 p.poll() 返回子进程的返回值,如果为None 表示 c++子进程还未结束. p.stdout.readline() 从 c++的标准输出里获取一行.
多凡
2020/02/11
10.5K0
windows下C与C++执行cmd命令并实时获取输出
在windows下一般会使用系统的cmd命令或者其他现成的一些命令行可执行程序来完成一些操作,比如:调用ping命令来测试网络是否畅通、调用ffmpeg命令进行视频转码等等。为了能在软件界面上有更好的交互输出,都需要将命令执行的过程拿到,进行处理,然后在界面上进行显示,让用户知道程序正在正常运行,下面就介绍几种输出的获取方式。
DS小龙哥
2022/05/28
6.6K0
windows下C与C++执行cmd命令并实时获取输出
jps命令详解_jps用什么文件打开
jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。它和linux中的ps有类似的功能。
全栈程序员站长
2022/10/05
1.8K0
点击加载更多

相似问题

包含小计/总计的嵌套网格视图

10

SSRS总计应与小计和而不是源值

20

SSRS 2008小计和总计合计不正确

10

小计和总计

117

查找小计和总计

15
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文