Я денормализую данные из некоторой базы данных, чтобы избежать запросов на объединение, поэтому, когда я собираюсь что-то зарегистрировать в коллекции «Pedido», я помещаю данные «Usuario» (который вошел в систему), иданные выбранного «Клиента».Я покажу всю коллекцию 'Cliente' в программе ion-select, чтобы я мог выбрать ее и продолжить, но как я могу получить из нее только выбранный документ?Кроме того, в качестве ошибки бонуса я могу выбрать только первое значение коллекции «Cliente», ion-select не позволит мне выбрать другое.
private formCriarPedido: FormGroup;
private clientesCollection: AngularFirestoreCollection<Cliente>;
private clientes$: Observable<Cliente[]>;
constructor(
private fb: FormBuilder,
public auth: AuthService,
private toast: ToastService,
private db: AngularFirestore
) {
this.formCriarPedido = this.fb.group({
clientePedido: ['', Validators.compose([Validators.required])],
});
this.clientesCollection = this.db.collection<Cliente>('cliente');
this.clientes$ = this.clientesCollection.valueChanges();
}
ngOnInit() {
}
iniciarPedido() {
}
escolheCliente(cliente: Cliente) {
console.log(cliente);
}
<ion-label position="stacked">Cliente</ion-label>
<ion-select class="selectCliente" (ionChange)="escolheCliente($event)" formControlName="clientePedido">
<ion-select-option value="{{cliente}}" *ngFor="let cliente of clientes$ | async">{{cliente.razaoSocialCliente}}</ion-select-option>
</ion-select>
<div align-self-start ngxErrors="clientePedido">
<div [ngxError]="['required']" [when]="['touched']">
<p class="alert-validation">
É necessário selecionar o Cliente!
</p>
</div>
</div>
</ion-item>