Guest User

Untitled

a guest
Feb 19th, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.39 KB | None | 0 0
  1. import {Component, OnInit} from '@angular/core';
  2. import {FormGroup, FormBuilder, FormArray} from '@angular/forms';
  3. import {MatChipInputEvent} from '@angular/material';
  4. import {ENTER, COMMA} from '@angular/cdk/keycodes';
  5.  
  6. @Component({
  7. selector: 'chip-test',
  8. templateUrl: './chip.component.html'
  9. })
  10. export class ChipComponent implements OnInit {
  11.  
  12. form: FormGroup;
  13.  
  14. //chips
  15. visible: boolean = true;
  16. selectable: boolean = true;
  17. removable: boolean = true;
  18. addOnBlur: boolean = true;
  19. // Enter, comma
  20. separatorKeysCodes = [ENTER, COMMA];
  21.  
  22. constructor(private fb: FormBuilder) {
  23. this.createForm();
  24. }
  25.  
  26. createForm(): void {
  27. this.form = this.fb.group({
  28. requirements: this.fb.array([])
  29. });
  30. }
  31.  
  32. ngOnInit(): void {
  33. }
  34.  
  35. add(event: MatChipInputEvent): void {
  36. let input = event.input;
  37. let value = event.value;
  38.  
  39. // Add our requirement
  40. if ((value || '').trim()) {
  41. const requirements = this.form.get('requirements') as FormArray;
  42. requirements.push(this.fb.control(value.trim()));
  43. }
  44.  
  45. // Reset the input value
  46. if (input) {
  47. input.value = '';
  48. }
  49. }
  50.  
  51. remove(index: number): void {
  52. const requirements = this.form.get('requirements') as FormArray;
  53.  
  54. if (index >= 0) {
  55. requirements.removeAt(index);
  56. }
  57. }
  58.  
  59. }
Add Comment
Please, Sign In to add comment