Я работаю с Ngx-Materialize. Я использую опцию Chips (https://sherweb.github.io/ngx-materialize/chip), пока что все хорошо, проблема, которую я имею, состоит в том, чтобы иметь возможность комбинировать форму для хранения нового проекта и, в свою очередь, хранить различные чипы.
project.component. html
<label>Nombre</label>
<input type="text" #nombre="ngModel" [(ngModel)]="projectService.selectedProject.Nombre" name="nombre" placeholder="Nombre" required [ngClass]="{'invalid-textbox' :projectNewForm.submitted && !nombre.valid }">
<div *ngIf="projectNewForm.submitted && !nombrevalid">
<label class="validation-message">This field is required.</label>
</div>
<h4>Twitter</h4>
<p><b>Usuarios</b></p>
<mz-chip-input
[autocompleteOptions]="autocompleteOptions"
[placeholder]="'Username'"
[secondaryPlaceholder]="'+Username'"
(add)="onAdd($event)"
(delete)="onDelete($event)"
(select)="onSelect($event)">
</mz-chip-input>
<p><b>Keywords</b></p>
<mz-chip-input
[autocompleteOptions]="autocompleteOptions"
[placeholder]="'Keywords'"
[secondaryPlaceholder]="'+Keywords'"
(add)="onAdd($event)"
(delete)="onDelete($event)"
(select)="onSelect($event)">
</mz-chip-input>
<input type="text" hidden>
<input type="submit" value="Guardar">
</form>
project.component.ts
onAdd(chip: Materialize.ChipDataObject) {
alert(`Tag deleted: ${chip.tag}`);
}
onSubmit(form: NgForm){
this.projectService.postProject(form.value).subscribe(
res =>{
this.showSucessMessage = true;
setTimeout(() => this.showSucessMessage = false, 400);
this.resetForm(form);
},
err => {
if(err.status == 442) {
this.serverErrorMessages = err.error.join('<br/>');
}else
this.serverErrorMessages = 'Something went wrong. Please contact admin.';
}
);
}
Добавить значения из входные данные форм не проблема, проблема в том, как взять значения Chip, которые я показываю, чтобы они сохранялись в базе данных.