[译]不要把React中的受控和非受控的form表单输入搞复杂

原文地址:Controlled and uncontrolled form inputs in React don’t have to be complicated
react的form受控和非受控话题

不要把React中的受控和非受控的form表单输入搞复杂

You may have seen many articles saying **“you shouldn’t use setState,”**and the docs are claiming refs are bad”… That is so contradictory. It’s hard to understand how to “get it right” and even what are the criteria for choosing.

(译:你可能已经看过很多文章说:“你不应该去使用 setState 去实现表单输入(setState是受控)”,并且官方文档声称:“使用 ref 的方式实现表单输入是不好的(ref是非受控)”。这些是互相矛盾的。这是很难去理解的,怎么样才能“得到正确的答案”,或者说选择标准是什么?)

How the hell are you supposed to make forms? (翻译:你到底应该怎么去实现form表单?)

After all, forms are central to many web apps out there. And yet, form handling in React seems to be a bit of a… corner stone?(翻译:毕竟,表单是许多网络应用程序的核心。然而,React中的表单处理似乎有点像一个墙角石)

Fear no more. Let me show you the differences between the approaches, as well as when you should use each.(翻译:不要担心,让我向你展示这些方法之间的差异,以及何时应该使用哪一种方法。)

The Uncontrolled(非受控)

Uncontrolled inputs are like traditional HTML form inputs:(翻译:非受控就像传统的HTML表单输入,如下:)

class Form extends Component {
   
  render() {
   
    return (
      <div>
        <input type="text" />
      </div>
    );
  }
}

They remember what you typed. You can then get their value using a ref. For example, in onClick handler of a button:&

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值