@track è una proprietà reattiva in LWC. Significa che il valore di questa proprietà viene modificato dal controller e bindato nel template. E’ una proprietà privata. A differenza di @api che è una proprietà pubblica.
Oltre alla proprietà @track abbiamo anche: @wire, @api
@api è una proprietà pubblica. Può essere richiamata da un altro component.
La differenza tra la proprietà privata e quella pubblica è che la proprietà privata può essere modificata solo dal controller del componente padre.
La proprietà pubblica invece può interagire con altri component
Non abusare l’uso di proprietà @track
Per importare questa proprietà
import { LightningElement, track } from 'lwc';
Se si vuole importare anche @api e @wire separare le proprietà dalla virgola.
Per usarla:
export default Class NomeClass extends LightningElement{
@track
nomeProperty = 'value';
nomeProperty2 = value;
}