var MyComponent = React.createClass({
handleClick: function() {
this.refs.myTextInput.focus();
},
render: function() { return (
<div>
<input type="text" ref="myTextInput" />
<input type="button" value="Focus the text input" onClick={this.handleClick} />
</div>
);
}
});
ReactDOM.render(
<MyComponent />,
document.body
);通过用this.refs.myTextInput.focus();,可是页面没有效果,提示错误:Error: addComponentAsRefTo(...): Only a ReactOwner can have refs. You might be adding a ref to a component that
was not created inside a component's `render` method, or you have multiple copies of React loaded
(details: https://fb.me/react-refs-must-have-owner).求指导,谢谢
1 回答

慕工程0101907
TA贡献1887条经验 获得超5个赞
亲测没有问题;
这类的报错一般出现在没有使用render的component里面,比如下面这样:
const Comp = ({test}) => { return ( <div ref="error">assdfas</div> ) }
你这里的写法是没有问题,接下来需要确认一下你的react的版本,也就是这个原因 ‘you have multiple copies of React loaded’
添加回答
举报
0/150
提交
取消