• 技术文章 >web前端 >前端问答

    react怎么修改值

    藏色散人藏色散人2022-12-21 16:13:00原创54

    react修改值的方法:1、打开相应的前端代码文件,获取标签上的参数;2、在方法调用的地方加一个bind指向;3、用bind改变this方向 ;4、使用state状态来修改值即可。

    本教程操作环境:Windows10系统、react18版、Dell G3电脑。

    react怎么修改值?

    react 组件点击修改值 state

    点击时改变标签上的值,但是在方法里是取不到this,那么首先要做的就是改变this

    class Leo extends React.Component{
                render(){
                    return (<div>
                                <input type="button" value="点击" onClick={this.show}/>
                                <br/>
                                //span获取标签上的参数
                                <span>{this.props.a}</span>
                                <h1>sadfsdf</h1>
                            </div>)
                }
                show(){
                    console.log(this)//在方法里如果直接调用this;打印出来会为Null,所以我们要做的就是改变this,需要在方法调用的地方加一个bind指向
                }
            }
            ReactDOM.render(<Leo a='12'/>,app)

    用bind改变this方向

     class Leo extends React.Component{
                render(){
                    return (<div>
                                <input type="button" value="点击" onClick={this.show.bind(this)}/>
                                <br/>
                                //span获取标签上的参数
                                <span>{this.props.a}</span>
                                <h1>sadfsdf</h1>
                            </div>)
                }
                show(){
                    console.log(this)//在方法里如果直接调用this;打印出来会为Null,所以我们要做的就是改变this,需要在方法调用的地方加一个bind指向
                }
            }
            ReactDOM.render(<Leo a='12'/>,app)

    48698aaa2cf35101ab72a113d6e5f4b.jpg

    需求:修改this.props.a里的值

    <script type="text/babel">
            class Leo extends React.Component{
                render(){
                    return (<div>
                                <input type="button" value="点击" onClick={this.show.bind(this)}/>
                                <br/>
                                //span获取标签上的参数
                                <span>{this.props.a}</span>
                                <h1>sadfsdf</h1>
                            </div>)
                }
                show(){
                   this.props.a = 12 //如果直接这样修改发面会报错,read only(只能读不能修改);如果要修改就应该用state状态
                }
            }
            ReactDOM.render(<Leo a='12'/>,app)
        </script>

    200089b1f2cc0deb630e017f08b3016.jpg

    使用state 状态来修改值,需要用constructor去初始

    tip:props 不能改变值,但state是可以改变的用setState

     <script type="text/babel">
            class Leo extends React.Component{
                constructor(){
                    super();
                    this.state = {
                        msg:'hello react '
                    }
     
                }
                render(){
                    return (<div>
                                <input type="button" value="点击" onClick={this.show.bind(this)}/>
                                <br/>
                                //hello react
                                <span>{this.state.msg}</span>
                                <h1>sadfsdf</h1>
                            </div>)
                }
                show(){
                    this.setState({//点击修改span里的值
                        msg:'哈哈'
                    })
                }
            }
            ReactDOM.render(<Leo/>,app)
        </script>

    推荐学习:《react视频教程

    以上就是react怎么修改值的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:React
    上一篇:react怎么改变组件大小 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • react怎么实现图片验证• react怎么隐藏滚动条滚动• react打印样式丢失怎么办• react怎么改变组件大小
    1/1

    PHP中文网