Таким образом, проблема не имела никакого отношения к моим маршрутам или API.Проблема была с моей save()
функцией в моем Angular front end.Я подошел к функции как к последовательной проблеме, когда на самом деле браузер / клиент подошел к моей функции с точки зрения эффективности.Ниже приведено то, что браузер попытался оптимизировать
save() {
if (this.dirtyFlag) {
this.dbService.dbsave(this.binconfig).subscribe( () => {
}, error => {
console.log(error);
});
}
if (this.isFoo && this.valid) {
this.dbService.dbsavebin(this.newbin).subscribe( error => {
console.log(error);
});
} else if (!this.valid && this.isFoo) {
this.toastr.warning('Enter a Bin Id');
}
this.router.navigate(['/binconfig']);
}
Здесь у меня был преобразователь маршрута, который перезагрузил страницу, которую я вызвал после сохранения.Присвоение маршрута в конце этого сохранения приведет к тому, что браузер попытается оптимизировать методы POST / GET в функции save()
и в преобразователе маршрутов.Я решил проблему, используя вместо этого функцию стрелки для выполнения навигации маршрутизатора после успешного сохранения.
save() {
if (this.dirtyFlag) {
this.dbService.dbsave(this.binconfig).subscribe( () => {
}, error => {
console.log(error);
}, () => {
this.router.navigate(['/binconfig']);
this.toastr.success('Changes Saved');
this.dirtyFlag = false;
});
}
if (this.isFoo && this.valid) {
this.dbService.dbsavebin(this.newbin).subscribe( () => {
this.router.navigate(['/binconfig']);
this.toastr.success('New Bin Added');
this.isFoo = false;
}, error => {
console.log(error);
});
} else if (!this.valid && this.isFoo) {
this.toastr.warning('Enter a Bin Id');
}
}