【发布时间】:2016-02-21 09:51:19
【问题描述】:
我有一个 react 组件,我们称之为组件 1
define([..., /path/component_2.jsx], function(..., Component2) {
var Component1 = React.createClass({
getInitialState: function() {
return {.......};
},
componentDidMount: function() {
.......
dates = ....;
Component2.setState({dates: dates});
}
render: function() { return (<div ...></div>) }
});
}
如您所见,我在此组件中调用了 Component2.setState。但是我收到一个错误,例如 setState is not a function。我尝试在组件 2 中定义一个自定义函数而不是 setState 函数并从组件 1 调用此函数,但我得到了同样的错误,“不是函数”。
还有组件 2:
define([..., ], function(...) {
var Component2 = React.createClass({
getInitialState: function() {
return {.......};
},
render: function() { return (<div ...></div>) }
});
}
所以我猜想在 reactjs 中我们调用一个组件只是为了渲染一些东西(React DOM 元素)?并且无法更改组件状态?
如果是这样,我如何从不是 first 的子级或父级的不同组件更改组件的状态?
【问题讨论】:
标签: javascript ruby-on-rails-4 backbone.js reactjs