[英]React + Alt: Use data from multiple stores to make a request to DataSource
我正在使用將React與Alt Flow實現結合在一起的應用程序。 目前,我正在嘗試找出使用多個Alt商店中的數據向后端撰寫請求的最佳方法。
說,我的DataSource
文件中有一個SheetDataStore
, FiltersStore
和fetchFilteredData
方法。 為了從后端獲取正確的數據,我需要將一些工作表數據和過濾器都傳遞給fetchFilteredData
,但是當您從其中一個存儲調用fetchFilteredData
方法時,可以傳遞一些參數和該存儲的狀態。
所以我看到了兩種處理這種情況的方法:
1)我執行2個操作: prepareFilters
和fetchData
。 prepareFilters
是從組件調用的,並由FilterStore
處理,后者准備所有必需的數據,然后調用fetchData
操作,將准備好的數據作為參數傳遞。 SheetDataStore
處理fetchData
操作並立即調用具有所有必需數據的fetchFilteredData
。
我在這里不喜歡的是,在我看來,商店不應該呼吁采取行動,所以這是一種駭人聽聞的解決方案。
2)我導入FilterStore
到SheetDataStore
和使用FilterStore.getState()
的一個內部SheetDataStore
方法來得到我需要的所有數據。 這似乎很容易,但是像這樣耦合商店可能會有一些陷阱。
對於這種情況,是否有最佳實踐? 也許你們中的一些人也遇到過類似的問題,並且可以從您的經驗中推薦采取哪種方法?
在組件中進行綁定。 假設您具有FilterComponent
然后將搜索操作SheetDataAction.search
給它: <FilterComponent search={SheetDataAction.search} />
然后在FilterComponent.render()
執行<button onClick={() => this.props.search(this.props.criteria)} />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.