enum What {
animal,
person
}
type AnimalProps = {
what: What.animal;
name: string;
};
type PersonProps = {
what: What.person;
age: number;
};
type ComponentProps = AnimalProps | PersonProps;
// пропсы
type MyCompProps = {
value: string;
...
};
// для компонента указывается тип - "функциональный компонент с пропсами MyCompProps"
// далее не нужно указывать тип для props и тип возвращаемого значения - TS выводит сам.
export const MyComp: React.FC<MyCompProps> = (props) => {
...
return (<div>{props.value}</div>);
};
const myFunction = <K extends keyof MyObjectTypes>(key: K): MyObjectTypes[K] => myObject[key];
...
<RegulationEditWindow setIsEditing={setIsEditing} />
...
interface RegulationEditWindowProps {
setIsEditing(editing: boolean): void;
}
const RegulationEditWindowView: React.FC<RegulationEditWindowProps> = React.memo((props) => {
...
<ArrowLeftOutlined onClick={() => props.setIsEditing(false)} />
...
});
formData.append('MAX_FILE_SIZE', '12345678'); // или сколько там
formData.append('file', file);
interface FishProps {
imgName: string;
random: number;
}
const Fish: React.FC<FishProps> = (props) => {
...