我正在尝试弄清楚如何以及在何处为 react + redux + thunk 中的选择框加载数据(即在我的操作中调用调度)。我不确定它是否应该放在我的 App 容器的构造函数中,或者我应该将它加载到我的组件中(在我的示例中:“MyDropdown”)
我的主要应用程序:
import MyDropdown from '../components/mydropdown';
// Should i import my action here and then...
// import { loadData } from '../actions';
class App extends Component {
render() {
return (
<div className="page-content">
<div className="option-bar">
// SEND it as a PROP inside MyDropdown...
<MyDropdown />
</div>
</div>
);
}
}
export default App;
我的组件
// OR.. Should i load it in my MyDropdown component here?
import { loadData } from '../actions';
class MyDropdown extends Component {
// If i load it here on load, how do i do it?
render() {
return(
<select>
{renderOptions()}
</select>
);
}
}
我已经在我的 App 类中尝试了 componentDidMount(),但它似乎没有用。将初始化数据和操作调用放在那里似乎是有意义的,因为它将全部集中,而不是在我的子组件中调用操作。另外,我将有多个选择框需要在启动时加载,所以我的 App 类可能会增长很多,这是正确的方法吗?我不确定最佳实践是什么,因为我才刚刚开始学习react。