反应打字稿传递成员变量

时间:2018-07-25 14:47:35

标签: reactjs typescript tsx

我的组件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;
    }
}

1 个答案:

答案 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

相关问题