Я получаю данные из шаблона на слой компонента, а затем передаю их в сервисный файл.Я вижу это в console.log()
на обоих уровнях.Когда я передаю переменную в методе рядом с маршрутом, который я хочу найти на сервере, он не передается, или я не обращаюсь к нему правильно (возможно, так), и я сгибал его всеми способами, которые я знаю.
Когда я console.log()
на сервере NodeJS ( с использованием express, body-parser и mongoose ), он возвращает {}
с req.body
и не определено, если я пытаюсь добавить ключ наконец.С помощью только req я получаю ОГРОМНЫЙ ответ, но анализируя всю информацию, все, что я действительно могу видеть, это ключ / значение метода и ключ / значение маршрута, к которому я пытаюсь получить доступ с помощью моего метода служебного файла.
Я перепробовал все, что мог, я использовал маршрут в почтальоне, и он работал нормально.
Я console.loged req req.params и req.URL безуспешно.
Другие файлы (компонент и служба) console.logging
данные, поэтому язнаю, что он передается из *ngFor
в шаблоне, который возвращает запрос ко всем 'tasks
', хранящимся в базе данных (ключи - это title, description и значение по умолчанию false).Я действительно не знаю, что еще делать.
У меня вчера тоже была такая же проблема при использовании метода удаления и метода findByIdAndDelete
mongoose.id
передавался как строка от шаблона до service file
, но по какой-то причине не появлялся в req, req.body, or req.body._id
.console.log()
в файле компонентов и сервисов отображало это.
{ mongoose express / using json with the body-parser to return data}
app.get('/task-info', function(req, res){
console.log('SERVER_:', req.body._id);
Task.findById({_id: req.body.id}, function(err, task) {
if(err){
console.log('ERROR_QUERY_FOR_DATA_INFO:', err)
res.json({message: 'ERROR_QUERY_FOR_DATA_INFO', data: err})
} else {
console.log('SUCCESS_QUERY_ONE_TASK_INFO');
res.json({message: 'SUCCESS_QUERY_ONE_TASK_INFO', data: task})
}
})
})
{ http.service.ts the console.log() is returning the task id }
getTaskInfo(task) {
console.log('SINGLE_TASK_INFO_SERVICE_FILE:', task._id);
return this._http.get('task-info', task);
}
{ app.component.ts the console.log() is returning the entire task }
singleTask(task: any) {
const observable = this._httpService.getTaskInfo(task);
observable.subscribe(data => {
console.log('SINGLE_TASK: ', data);
});
}
----The app.component.html----
<div>
<h1>Tasks</h1>
<ul *ngIf="allTasksList" class="all-tasks-ul">
<li *ngFor="let task of allTasksList.tasks">{{ task.title }}
<div class="edit-task-btn">
<button (click)="singleTask(task)">Info</button>
</div>
<div class="info-task-btn">
<button (click)="changeTask(task)">Edit</button>
</div>
<div class="delete-task-btn">
<button (click)="deleteOneTask(task._id)">Delete</button>
</div>
</li>
<div *ngIf="editTask" class="editing-task-div">
<h1>Editing {{ editTask.title }}</h1>
<form (submit)="updateTask(editTask)">
<label>
Update Task:
<input type="text" name="editTask.title" [(ngModel)]="editTask.title" id="">
</label><br>
<label>
Update Task Description:
<input type="text" name="editTask.description" [(ngModel)]="editTask.description" id="">
</label><br>
<input type="submit" value="Update Task">
</form>
</div>
</ul>
</div>
SERVER_: undefined
это то, что печатает conole, затем ошибка отплохой запрос.Как я уже сказал, в POSTMAN тот же самый get получает данные.