2016-04-15 59 views
0

下面的代碼是否正確地在redux應用程序設計中提供POST請求?如何提供Redux POST操作

代碼很好,但我不確定它是否因爲任何原因再次成爲架構。

export const SITES_RECEIVED = 'SITES_RECEIVED'; 

//@private 
function sitesReceived(sites) { 
    return { 
    type: SITES_RECEIVED, 
    sites: sites 
    }; 
} 

//@public 
export const sitesFetch =() => { 
    return dispatch => { 

    fetch('http://localhost:3000/') 
     .then(function(response) { 
     return response.text(); 
     }).then(function(body) { 
     return JSON.parse(body); 
     }).then(function(json) { 
     dispatch(sitesReceived(json)); 
     }) 
    }; 
} 

要求:終極版,終極版 - 咚

+0

這是一種可行的方法。你的方法很好。 – Florent

回答

0

權。沒問題。
此方法在官方Redux文檔中列出。 http://redux.js.org/docs/advanced/AsyncActions.html#async-action-creators

+0

是的,我試圖將官方文檔減少到絕對最小代碼。 令我驚訝的是,AJAX呼叫作爲最常見的問題在線上有這麼幾個例子。 –

+1

呃,Redux不是一個典型的全棧框架,只關注狀態管理,它不是框架的主要關注點。如果您需要構建應用程序的體系結構包含更復雜的AJAX請求,請考慮使用[Middleware](http://redux.js.org/docs/advanced/Middleware.html)或[redux-saga](https:/ /github.com/yelouafi/redux-saga)。 – kuy