javascript - ¿Cómo establecer un parámetro predeterminado para @Input en Angular2?
Supongamos que tengo un componente que mostrará una propiedad name, así que más o menos sería así:
import {Component, Input} from 'angular2/core';
@Component({
selector: 'demo',
template: `<div>{{name}}</div>`,
styles: [``],
})
export class Demo {
@Input() name: string;
}El problema es, ¿cómo podría mostrar [noname] cuando alguien usa este componente pero no pasa ninguna propiedad name?
La única solución que me viene a la mente es usar un operador lógico dentro de la plantilla como {{ name || '[noname]' }}.
Respuesta #1
intentar
@Input() name: string = 'noname';
Respuesta #2
con Angular 8 y la configuración predeterminada de tslint tu IDE notará:
así que está bien simplemente escribir:
@Input() addclass = '';
sin ninguna "anotación de tipo".
