我一直试图找出管理我的反应形式的最佳方法.我试图使用onChange触发一个动作并用我的表单数据更新我的redux商店.我也试过创建本地状态,当我的表单被提交时,我触发并动作并更新redux存储.
我该如何管理受控输入状态?
我是React/Redux的新手.任何帮助都会很棒.我有一个组件,它在ComponentDidMount上进行API调用以获取数据,然后更新我的Redux存储.该组件还使用connect来获取Redux状态,并将其作为props传递给哑组件.
componentDidMount() {
this.props.dispatch(fetchSite()) //this triggers the api call and updates the redux store.
}
return (
<div>
<Child
myprop={this.props.name}
/>
</div>
export default connect((state) => ({name: state.name}))(Container);
Run Code Online (Sandbox Code Playgroud)
因为componentDidMount在组件呈现后触发,它将呈现,运行api,然后重新呈现,因为api更改了redux状态.这使得组件呈现两次.第一次没有任何数据,然后第二次有来自api的好数据.
有没有更好的办法?
由于我的Child组件基于它传递的props呈现不同的东西,因此它在第一次呈现时会短暂地显示不同的东西.然后,当api更新商店并重新呈现组件时,它会再次显示不同的内容.它是两种不同状态的闪烁.
有没有办法让它只用正确的API数据渲染一次?
我正在做一个ecto查询,我正在尝试分组q.created_date
.此查询成功执行GROUP BY,但它在第二次执行.我试图按月分组.
MYQUERY |> group_by([q], [q.created_date, q.id])
Run Code Online (Sandbox Code Playgroud)
是否有类似的东西:
MYQUERY |> group_by([q], [month(q.created_date), q.id])
Run Code Online (Sandbox Code Playgroud)