Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 这里的输入如何得到一个.value,什么是ref?_Javascript_Reactjs_Redux_React Redux - Fatal编程技术网

Javascript 这里的输入如何得到一个.value,什么是ref?

Javascript 这里的输入如何得到一个.value,什么是ref?,javascript,reactjs,redux,react-redux,Javascript,Reactjs,Redux,React Redux,这里的输入如何获得.value?这是如何从中的节点获取的: { 输入=节点 }}/> node是DOM节点吗,就像在输入标记中一样 究竟什么是ref,我们为什么需要它来获取输入值 我是否可以将ref放在react中的任何html类型标记上以获取DOM节点 从“React”导入React 从“react redux”导入{connect} 从“../actions”导入{addTodo} 让AddTodo=({dispatch})=>{ 让输入 返回( { e、 预防默认值() 如果(!inpu

这里的输入如何获得
.value
?这是如何从中的节点获取的:

{
输入=节点
}}/>

node
是DOM节点吗,就像在输入标记中一样

究竟什么是
ref
,我们为什么需要它来获取输入值

我是否可以将
ref
放在react中的任何html类型标记上以获取DOM节点

从“React”导入React
从“react redux”导入{connect}
从“../actions”导入{addTodo}
让AddTodo=({dispatch})=>{
让输入
返回(
{
e、 预防默认值()
如果(!input.value.trim()){
回来
}
分派(addTodo(输入值))
input.value=“”
}}>
{
输入=节点
}} />
添加待办事项
)
}
AddTodo=connect()(AddTodo)
导出默认AddTodo
  • 如果ref带有,则节点是组件的实例;如果ref带有,则节点是DomeElement实例
  • 您可以在任何地方使用
    ref
    ,但react建议
  • 有两种方法可以使用ref.&

  • react提供以检索表单元素值


  • 您是否尝试过阅读有关
    ref
    的官方React文档,解释其工作原理?有趣的是,这种实现比使用state保存输入并设置onChange更好还是更差?你如何确定哪个更好?为了回答你的问题,我建议你阅读另一个很棒的链接。简而言之,您应该在React代码中尽可能少地使用
    ref
    。如果您可以避免它,那么avoid it.ref基本上是很棒的,如果您正在做某种形式的模板,并且只想引用作为封装组件一部分的元素。否则,另一种选择是使用整个ID堆,这可能不好,也可能不坏,但这在很大程度上取决于您希望整个ID如何相互交互