当前位置:  开发笔记 > 编程语言 > 正文

在反应中单击锚标记后,将焦点设置在输入元素上

如何解决《在反应中单击锚标记后,将焦点设置在输入元素上》经验,为你挑选了1个好方法。

我有两个组成部分:

在我的父组件中,我有:

    //set focus object to false
    // include Child Component and React libraries
    const parent = React.createClass({
    getInitialState: function() {
      return {
        focus: false
      };
    },
      render() {
        return(
          
Click me
); }, _handleClick: function() { this.setState({focus: !this.state.focus}); }, };

在我的Child组件中,我有一个输入标签:

 const child = React.createClass({
      render() {
        return(
          
); }, componentWillReceiveProps: function() { this.refs.input.focus(); }, };

总之,我在我的方法中尝试做的是通过更改prop调用componentWillReceiveProps来专注于输入标记.但是现在这不起作用.它最终只关注锚标签.我知道我做错了什么?

编辑:进一步详细说明我的问题是,一旦我点击锚标记,子组件中的输入元素就不会被关注.我怎样才能让它专注于?



1> mjhm..:

componentWillReceiveProps在孩子的render方法之前执行.因此,在重点关注元素后,render很可能会破坏input元素.最有可能你可以改变componentWillReceivePropscomponentDidUpdate,你会好到哪里去.

推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有