夥計們。商店的不同實例
我讓項目在瀏覽器中有選項卡。每個標籤都包含具有不同設置和這些搜索結果的用戶搜索。我找不到存儲這些數據的正確方法。
我想,我需要一些商店。因爲我只有一些標籤可以在不同的應用程序之間切換用戶,但在一個裏面。在其他情況下,我需要存儲兩次數據 - 記住當前狀態,並在某個「歷史記錄」縮減器中收集舊搜索。
對不起,這是我第一次在這裏體驗,如果有人能幫到你,請幫忙。
夥計們。商店的不同實例
我讓項目在瀏覽器中有選項卡。每個標籤都包含具有不同設置和這些搜索結果的用戶搜索。我找不到存儲這些數據的正確方法。
我想,我需要一些商店。因爲我只有一些標籤可以在不同的應用程序之間切換用戶,但在一個裏面。在其他情況下,我需要存儲兩次數據 - 記住當前狀態,並在某個「歷史記錄」縮減器中收集舊搜索。
對不起,這是我第一次在這裏體驗,如果有人能幫到你,請幫忙。
您可以創建多個數據包含變量及其值的類。這些數據類然後可以在創建商店時被組合和使用。
此方法允許您在商店中擁有多個部分,並且您的每個部件都可以訂閱他們所需的部分。組件將擁有他訂閱的這些部分的數據,並在更新其中一個部分時重新呈現。
實施例的數據類:
pageData.js
export const pageData = {
pageNumber: 1,
pageSize: 30,
};
userData.js
export const userData = {
language: 'English',
timezone: 'ESTERN',
};
創建商店時,這些類,然後組合:
store.js
import pageData from .../pageData;
import userData from .../userData;
const defaultState = {
pageData,
userData,
};
export const store = createStore(rootReducer, defaultState));
你減速,需要修改pageData
需要有名字pageData
爲好。 userData
也是如此。
完成所有這些設置後,您必須將mapStateToProps()
組件添加到您希望它們訂閱的數據中。
例如,如果你希望你的PageComponent.js
只知道pageData,則該組件,您將使用方法:
function mapStateToProps (state) {
return {
pageData: state.pageData
};
}
我會建議尋找到redux documentation學習如何設置mapStateToProps()。
當所有這些都完成後,您可以console.log(this.props)
並看到您的數據部分在那裏,並很好地分開。
這可能是一個難以迅速掌握的概念,如果您有任何疑問或錯誤,請不要猶豫,在此寫下它們。 – petithomme
你將永遠只有一個商店在減少。我認爲你在這裏試圖做的是在你的商店中有多個_sections_,這樣你的組件就可以只訂閱他們需要的部分。當您創建商店時,您在參數中使用defaultState。該defaultState可以包含這些多個部分,然後您的reducer可以分別修改這些部分。 – petithomme
如果你願意,我可以給你寫一個快速的例子,說明它會是什麼樣的答案。 – petithomme
@petithomme是的,請,如果可以的話,我會很感激 – maxolbraight