Sou novo no React Redux. Você pode me dizer como escrever manualmente a função saveUserFilter abaixo ? Não quero mais usar redux-persist-transform-filter, pois está usando lodash.set, que é vulnerável à poluição do protótipo.
const saveUserFilter = createFilter('user', [
'username',
'displayName',
'timeZone',
])
const persistConfig = {
key: KEY,
storage,
whitelist: [
'user',
'timeZones',
],
transforms: [ saveUserFilter ],
}
Feliz em te ver! Eu sei como você se sente sobre
lodash.set
o que é usadoredux-persist-transform-filter
pode ser vulnerável à poluição do protótipo, especialmente quando consideramos os casos em que a atribuição de objeto usa Object.create(). Mas não se preocupe porque existe um método fácil que pode ajudá-lo a se livrar desse método ao salvar filtros do usuário, usando o seguinte.Primeiro, vamos definir a
saveUserFilter
função. Esta função filtrará manualmente ouser
estado para incluir apenas as propriedades necessárias:username
,displayName
, etimeZone
.Veja como você pode fazer isso:
Explicação:
redux-persist
paracreateTransform
definir uma transformação personalizada.username
,displayName
,timeZone
) que precisamos douser
estado.user
redutor na whitelist para que esta transformação seja aplicada apenas a ele.Para mais detalhes sobre como criar transformações com
redux-persist
, você pode conferir a documentação oficial .Sinta-se à vontade para entrar em contato se tiver mais dúvidas ou precisar de mais ajuda. Boa sorte com seu projeto!