[英]Store data fetch in a local state redux reactjs
我嘗試將獲取日期存儲在本地 state 中,而不是在我的應用程序的全局存儲中。
(...)
.then(response => response.json())
.then (data => dispatch(fetchSuccess(data)))
接着:
export const FETCH_SUCCESS = 'FETCH_SUCCESS';
function fetchSuccess(create) {
return {type : FETCH_SUCCESS, payload: create}
}
我在減速器中有我的數據:
const initialState = {
eCreate: ''
};
case FETCH_SUCCESS:
return {...state, eCreate: action.payload}
在我的組件中有我的 state 之后:
rEvt : state.redu.eCreate
我可以顯示:
console.log(rEvt)
但是我的 state eCreate 在我的所有應用程序中都可用。 我只是希望這個 state 在這個組件中可用。 我怎樣才能做到這一點? 感謝幫助。
我的組件
function Create(props) {
const {cEvt, sEvt, gtf, rEvt} = props;
console.log(rEvt)
if (rEvt.name === sEvt)
{
return <Redirect to={"/d/" + rEvt.name} />
}
return (
<div >
<input type="text" value={sEvt} onChange={e => cEvt(e.target.value)} />
<button onClick={() => gtf(sEvt)} >Go !</button>
</div>
);
}
還有我的組合容器:
const mapStateToProps = (state) => ({
sEvt : state.redu.sCreate,
rEvt : state.redu.eCreate
})
const mapDispatchToProps = dispatch => ({
cEvt : e => dispatch(changeInput(e)),
gtf : (name) => dispatch(fetchCreate(name))
})
我的 fetch 有一個方法 POST 來創建一個帶有輸入名稱的新條目。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.