Quando si scrivono componenti Angular 2.0, come si impostano i valori predefiniti per le proprietà?Come impostare i valori predefiniti per le proprietà del componente Angular 2?
Ad esempio: voglio impostare foo
su "bar" per impostazione predefinita, ma l'associazione potrebbe risolversi immediatamente in "baz". Come si svolge questo nei ganci del ciclo di vita?
@Component({
selector: 'foo-component'
})
export class FooComponent {
@Input()
foo: string = 'bar';
@Input()
zalgo: string;
ngOnChanges(changes){
console.log(this.foo);
console.log(changes.foo ? changes.foo.previousValue : undefined);
console.log(changes.foo ? changes.foo.currentValue : undefined);
}
}
Dato i seguenti modelli, questo è quello che mi aspetto che i valori siano. Ho sbagliato?
<foo-component [foo] = 'baz'></foo-component>
Logged to console:
'baz'
'bar'
'baz'
<foo-component [zalgo] = 'released'></foo-component>
Logged to console:
'bar'
undefined
undefined
Cosa succede quando lo provi? –
@BryanRayner il modo in cui la console attualmente viene stampata è corretto ... qual è il problema che stai affrontando? –
Attualmente non mi trovo di fronte a un problema, ma cerco solo di chiarire il comportamento previsto. Quando non ho trovato la risposta alla mia curiosità, ho deciso di porre la domanda nel caso in cui altri avessero lo stesso desiderio di chiarezza. –