Я хочу генерировать случайную строку формата 'ZXCVBN' каждый раз при отправке формы и присваивать параметру 'code' массива событий в файле add-event.comonent.ts. Как мне это сделать?
Код должен состоять ровно из 6 случайных букв в верхнем регистре.
add-event.component.ts: -
export class AddEventComponent implements OnInit {
event: Event = {
code: '',
name:'',
password:'',
pollCat:''
}
constructor(private eventService : EventsService) { }
ngOnInit() {
}
onSubmit()
{
if(this.event.name !="" && this.event.password !="")
{
this.eventService.addEvent(this.event);
this.event.name = '';
this.event.password = '';
}
}
}
events.service .ts: -
@Injectable({
providedIn: 'root'
})
export class EventsService {
eventsCollection : AngularFirestoreCollection<Event>;
events: Observable<Event[]>;
constructor(public afs: AngularFirestore) {
this.eventsCollection = this.afs.collection<Event>('Events');
this.events = this.eventsCollection.snapshotChanges().pipe(
map(changes => {
return changes.map(a => {
const data = a.payload.doc.data() as Event;
data.id = a.payload.doc.id;
return data;
})
}));
}
getEvents()
{
return this.events;
}
addEvent(event: Event)
{
this.eventsCollection.add(event);
}
}