我的组件Child具有一个可以明显改变的membervariable。 但是,据我所知,我只能通过PROPS和STATES。我知道我可以通过PROPS或其他参数传递我的membervariables,但是没有更漂亮的解决方案吗?
class Child extends React.Component<any,any> {
private anyValue:string;
constructor(props) {
this.change = this.change.bind(this);
}
public render() {
return (
<input onChange={this.change} value={this.anyValue}/>
);
}
private change(e:any) {
this.anyValue = e.target.value;
}
}
答案 0 :(得分:0)
这正是国家针对的目的:
class Child extends React.Component<any,{anyValue: string}> {
constructor(props) {
super(props);
this.change = this.change.bind(this);
}
public render() {
return (
<input onChange={this.change} value={this.state.anyValue}/>
);
}
private change(e:any) {
this.setState({anyValue: e.target.value});
}
}
您唯一的其他选择是使用forceUpdate
。