这次给大家带来React中表单使用详解,React中表单使用的注意事项有哪些,下面就是实战案例,一起来看一下。
表单
React 是个单向数据流的框架,所以在表单元素与其它 DOM 元素有所不同,而且和双向绑定的框架在操作上也有很大不一样。所以在这里单独拿出来说。
输入受控
import React from 'react'
import ReactDOM from 'react-dom'
class Component1 extends React.Component{
constructor(props){
super(props)
this.state = {
text: 'Hello React'
}
}
render(){
return (
精美淘宝客单页面 zblog模板
采用zblog修改的模板,简单方便,直接解压上传到空间即可使用,页面简单,适合SEO,导航,次导航,最新文章列表,随机文章列表全部都有,网站采用扁平结构,非常适用淘宝客类小站,所有文章都在根目录下。所有需要修改的地方在网页上各个地方都有标注说明,一切在网站后台都可以修改,无须修改任何程序代码,是新手的不二选择。后台登陆地址: 域名/login.asp用户名:admin (建议不要修改)密码:adm
下载
)
}
}
ReactDOM.render( , document.getElementById('p1'));这个案例说明了在 React 在表单元素因单向数据流所以在 value 给定后就无法再次修改,所以需要配合 onChange 事件来完成。所以上面的案例应该是这样的
class Component1 extends React.Component{
constructor(props){
super(props)
this.state = {
text: 'Hello React'
}
}
change = (e) => {
this.setState({text: e.target.value})
}
render(){
return (
)
}
}效果预览
textarea 元素
在普通 HTML 中,textarea 元素是节点文本值
但在 React 中,该元素需要使用 value 属性。
class Component1 extends React.Component{
constructor(props){
super(props)
this.state = {
text: 'Hello React'
}
}
change = (e) => {
this.setState({text: e.target.value})
}
render(){
return (
)
}
}select 元素
在普通 HTML 中, select元素要指定默认选中值,就得在对应的option中加上属性selected
但在 React 中,只需要给定属性value即可
class Component1 extends React.Component{
constructor(props){
super(props)
this.state = {
text: 'lime'
}
}
change = (e) => {
this.setState({text: e.target.value})
}
render(){
return (
)
}
}input file 元素
因为是特殊的元素,它是只读的,所以在 React 中需要用ref来进行特殊处理
class Component1 extends React.Component{
submit = (e) => {
console.log(this.file.files)
}
render(){
return (
{this.file = input}}/>
)
}
}相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:









