javascript - Typescript reducer initial state och alternativargument för React-komponent
Jag har en typ för min reducerare såsom:
export type Style = {
color: string;
(rest...)
}
export const initialState: Style = {
color: 'blue';
(rest...)
}
Jag har en komponent som tar emot ett stilobjekt och egenskaperna är valfria och skriver helt enkelt över det nuvarande tillståndet för stilen. Typen ser ut så här:
export type InputStyle = {
color?: string;
(rest?...)
}
Så jag måste egentligen skapa två duplicerade typer, förutom att den ena har alla valfria egenskaper och den andra inte har det. Finns det ett bättre mönster för detta? Min intuition säger att detta inte är rätt sätt.
Svar #1
Försök använda Partial-verktygs typen - det kan vara precis vad du letar efter:
export type Style = {
color: string;
(rest...)
}
export type InputStyle = Partial<Style>;
