доброго дня всем,
Я работаю над собственным проектом, где я использую AsyncStorage, чтобы сохранить некоторые из моих данных, которые не требуют наличия полноценной базы данных.
В связи с этим я столкнулся с некоторыми проблемами, связанными с использованием этой функции, главным образом, статического метода с множеством множеств AsincStorage.
я использую мультимножество внутри действия с избыточностью, но по какой-то причине оно не работает, несмотря на то, что действие вызывается правильно, и более странная часть этого заключается в том, что оно работало с другим действием.
это действие, которое работает:
export const saveChosenCompany = (username, company) => dispatch => {
AsyncStorage.multiSet([
[`${username}.companyID`, company.id],
[`${username}.companyName`, company.name]
])
.then(() => {
dispatch({
type: SAVED_COMPANY,
payload: company
})
})
.catch(err => {
console.log(err);
dispatch({
type: SAVED_COMPANY,
payload: {
id: null,
name: null
}
})
})
}
это действие, которое не работает должным образом:
export const saveConfigs = (configs) => dispatch => {
console.log("action", configs)
AsyncStorage.multiSet([
[`updateStockpile`, configs.stockpile],
[`updateData`, configs.data],
[`emptyPhone`, configs.emptyPhone],
[`language`, configs.language],
[`autoUpdate`, configs.autoUpdate],
])
.then(() => {
console.log("set async...")
dispatch({
type: SAVE_CONFIG,
payload: configs
})
})
.catch(err => {
console.log(err);
console.log('no async set...')
})
}
это способ, которым я реализую это внутри моего компонента:
saveChangedConfigs = async () => {
this.props.saveConfigs({
stockpile: this.state.updateItem.toString(),
data: this.state.updateData.toString(),
delete: this.state.emptyFiles.toString(),
autoUpdate: this.state.autoUpdate,
language: this.state.language
})
}
я вызываю этот метод из подпрограммы onChange собственного средства выбора, собственного переключателя и настраиваемого компонентаact-native-numeric-input из библиотеки с тем же именем.
Я надеюсь, что некоторые из них помогут мне понять, почему не работает мультимножество (я проверил его, получив значения, и все они были нулевыми).
Спасибо всем заранее за ваше время и проблемы.