好像有很多这样的错误的方法和我相当肯定,我想这样做的错误的方式(请注意这个代码不目前的工作):在React + Redux中将参数传递给reducer的正确方法?
class SubmitLink extends React.Component<SubmitLinkProps, {}>{
constructor(props: SubmitLinkProps) {
super(props);
this.urlToPass = "nothing";
}
urlToPass: string;
handleChange(e: React.FormEvent<HTMLInputElement>) {
this.urlToPass = e.currentTarget.value;
}
public render() {
return <div>
<div>hello world {this.props.url}</div>
<input onChange={this.handleChange} type='text'></input>
<button onClick={() => {
this.props.submitlink(this.urlToPass);
}}>submit</button>
</div>
}
}
除了事实代码不起作用(urlToPass在运行时未定义,不确定原因)我只是为了从文本字段获取输入而看起来像一大堆工作。同时,这是我可以找到如何做到这一点的唯一方法,但它确实感觉不对。
另外值得一提的是,使用ES6语法自动绑定“这个”到功能:myFunction的= (params)=> {code}; – Adam
好叫出亚当! – TheBottleSeller
嗯试着这个代码我得到这个错误:TS2339:'只读<{}>'类型不存在属性'urlToPass'。 – tweetypi