I have two interfaces. They are really similar except for one key.
interface InitialStateFromDB {
uploads: {
companyImage: string,
map: string
},
adminPasswords: string,
postInfos: PostInfo[] | undefined
}
interface InitialState extends Omit<InitialStateFromDB, 'adminPasswords'> {
adminPasswords: AdminPassword
}
And I get initialState from DB.
const initialStateFromDB: InitialStateFromDB = window.__PRELOADED_STATE__;
Then I extract value of each property from initialStateFromDB to make initialState.
let adminPasswords: AdminPassword = JSON.parse(initialStateFromDB.adminPasswords);
const initialState : InitialState = {
uploads : initialStateFromDB.uploads,
adminPasswords,
postInfos: initialStateFromDB.postInfos
}
But I think there is a more simple way to merge except adminPasswords property. So I searched about this.
Clone a js object except for one key
But, I don't know how to do like that in typescript.
So, My question is that "How to clone object except for one key in Typescript"