import { MaestroModel , Movimiento , MaestroTipoModel } from './../datos.model' ; import { Component , OnInit , Input , Output , EventEmitter } from '@angular/core' ; /** Es un componente simple que recibe datos y emite eventos
 * Pero que no usa servicios de datos
 */ @ Component ( { selector : 'app-nuevo' , templateUrl : './nuevo.component.html' , styleUrls : [ './nuevo.component.css' ] } ) export class NuevoComponent implements OnInit { /** propiedad para entrada de tipos de movimiento */ @ Input ( ) tipos : MaestroModel [ ] = [ ] ; /** propiedad para entrada de categorias de movimiento */ @ Input ( ) categorias : MaestroTipoModel [ ] = [ ] ; /** propiedad para entrada de un movimiento */ @ Input ( ) movimiento : Movimiento ; /** propiedad para emitir el evento de guardado del movimiento actual */ @ Output ( ) guardar : EventEmitter < Movimiento > = new EventEmitter < Movimiento > ( ) ; /** propiedad para emitir el evento de cambio de tipo del movimiento actual */ @ Output ( ) usuarioCambiarTipo : EventEmitter < number > = new EventEmitter < number > ( ) ; constructor ( ) { } ngOnInit ( ) { } /** cuando el usuario hace click en un radio button de tipo */ usuarioCambioRadioButton ( ) { this . usuarioCambiarTipo . emit ( this . movimiento . tipo ) ; } /** cuando el usuario hace click en el botón de guardado */ guardarMovimiento ( ) { this . guardar . emit ( this . movimiento ) ; } }