reactjs - typescript ve javascript'te & nedir?


Bunu başkasının kodunda gördüm. (bu bir React bileşeninin props'u.) & işaretinin AND mantıksal operatörü olduğunu biliyorum. Bu kodda & işaretinin başka bir anlamı olduğunu düşünüyorum. center={{latitude: number, longitude: number}, {zoom: 2, tilt: 2,}} kullandığımda çalışmadı ve TypeScript hatası ile geçerli formatla eşleşmediğini biliyorum.

  1. Bunda & ne anlama geliyor?
  2. merkez props içinde nesne formatını nasıl geçerli kılarım (React kullanıyorum)?
export interface Coord {
    latitude: number;
    longitude: number;
}
center?: Coord & { zoom?: number; tilt?: number; bearing?: number };

Cevap #1

& Kesişim Tipidir

Temel olarak, türleri birleştirmenizi sağlar

son nesne center tüm bahsedilen anahtarları içermelidir

 { zoom?: number; tilt?: number; bearing?: number, latitude, longitude };

resmî doküman : https://www.typescriptlang.org/docs/handbook/2/objects.html#intersection-types

Bunun nedeni

center = {{latitude: number,longitude: number},{zoom: 2, tilt: 2,}}

işe yaramadı çünkü, birincisi geçerli bir nesne değil, ikincisi belirtilen tüm anahtarlar ( { zoom?: number; tilt?: number; bearing?: number, latitude, longitude } ) nesnede bulunmalı

İlgili makaleler