Sobes.tech
Middle+

TypeScript-ის დავალების მეორე ნაწილი: გარდაქმნათ Delivery ტიპის ობიექტის ყველა ველი ახალი ტიპად, გამოიყენეთ TypeScript-ის სასარგებლო ტიპები.

sobes.tech AI

პასუხი AI-სგან

TypeScript-ში, Delivery ტიპის ობიექტის ყველა ველის გარდაქმნა შესაძლებელია გამოყენებით დახმარების ტიპებს, როგორიცაა Partial<T>, Required<T>, Readonly<T>, Pick<T, K>, Record<K, T> და სხვა.

თუ გსურთ ობიექტის ყველა ველის გარდაქმნა, მაგალითად, მათ ყველა სავალდებულო გახადოთ, შეგიძლიათ გამოიყენოთ Partial:

type Delivery = {
  id: number;
  address: string;
  date: Date;
  delivered: boolean;
};

// ყველა ველის სავალდებულო გახადეთ
type PartialDelivery = Partial<Delivery>;

თუ გსურთ ყველა ველი მხოლოდ წაკითხვადი გახადოთ:

// ყველა ველი მხოლოდ წაკითხვადი გახადეთ
type ReadonlyDelivery = Readonly<Delivery>;

მაგალითად, თუ გსურთ ყველა ველი სტრიქონად გარდაქმნათ:

// ყველა ველი სტრიქონად გარდაქმნა
type StringifiedDelivery = {
  [K in keyof Delivery]: string;
};

ასე, mapped types და დახმარების ტიპების გამოყენებით, შეგიძლიათ შექმნათ ახალი ტიპები, რომლებიც დაფუძნებულია თავდაპირველ Delivery ტიპზე.