我有两个文件Reactjs
file1.js
class App extends Component {
constructor(props) {
super(props);
this.state = {
data: [],
selection: null
};
file2.js
class SearchBar extends Component {
InputChange = () => {
console.log(App.state);
}}
我想在使用类SearchBar时使用和更改类App的状态,我将file2导入到file1。谢谢!我的英语不好。
答案 0 :(得分:3)
这很简单:D你只需要传递改变状态的函数,如下所示:
class App extends Component {
constructor(props) {
super(props);
this.state = {
data: [],
selection: null
};
changeStuff(paramsIfAny) {
this.setState(/* whatever you want */);
}
render() {
.....
<SearchBar changeHandler={this.changeStuff.bind(this)} />
.....
}
}
然后在您的SearchBar组件上
class SearchBar extends Component {
InputChange = (params) => {
this.props.changeHandler(params);
}}
这是真正缩写的代码,以简化我的意思。我希望你能完成它!