Patrząc na przykład kodu angular2 , widzimy niektóre właściwości publiczne ze znakiem $:
<....>
private missionAnnouncedSource = new Subject<string>();
private missionConfirmedSource = new Subject<string>();
// Observable string streams
missionAnnounced$ = this.missionAnnouncedSource.asObservable();
missionConfirmed$ = this.missionConfirmedSource.asObservable();
<....>
Czy ktoś może wyjaśnić:
- dlaczego używa się $ (jaki jest powód tego zapisu? zawsze używaj tego dla właściwości publicznych)?
- używane są właściwości publiczne, ale nie metody (np. missionAnnouncements (), missionConfirmations ()) - ponownie, czy jest to konwencja dla aplikacji ng2?
Czy w oficjalnym przewodniku po stylu nie ma nic na ten temat ?
Paradygmat nazewnictwa $ pochodzi od Andre Saltza i sugeruje pluralizowanie wszystkich nazw zmiennych zawierających obserwowalne lub strumienie.
Innym podejściem jest pluralizacja nazw zmiennych zawierających obserwowalne lub strumienie ze znakiem Unicode, który pasuje do ostatniej litery słowa. Rozwiązuje to problem ze słowami, które nie są w liczbie mnogiej za pomocą „s”.
Żadna z tych konwencji nazewnictwa nie znajduje się w oficjalnym przewodniku po stylu Angular. Wykorzystanie jednego lub drugiego (lub żadnego) jest całkowicie zależne od osobistych preferencji.
źródło
fish$
vsfish€$
Aktualizacja : https://angular.io/guide/rx-library#naming-conventions-for-observables
Oryginał :
Widziałem, jak zmienne kończą się
$
podczas czytania oficjalnego samouczka o bohaterze:Przyjrzyj się uważnie, a zobaczysz, że * ngFor iteruje listę nazwanych
heroes$
, a nie bohaterów .$ Jest konwencją, która wskazuje, że heroes $ jest obserwowalną, a nie tablicą.
Większość przypadków polega na tym, że nie subskrybujemy tych obserwowalnych zmiennych w komponencie. Zazwyczaj używamy AsyncPipe do automatycznego subskrybowania zmiennych obserwowalnych
Nie znalazłem go w Przewodniku po stylach, odkąd Angular5.1 wydał wczoraj (6 grudnia 2017 r.).
źródło
heroes: Observable<Hero[]>;
Nie widziałem tego
$
w przewodniku po stylu, ale widziałem, że jest często używany w obiektach publicznych, które odnoszą się do obserwowalnych obiektów, które można subskrybować.źródło