Моя таблица Smart не будет заполняться с помощью HttpClient для отправки запроса на получение данных JSON.
this.http.get('http://localhost:56591/api/db/get').subscribe((data) => {
return data;
});
Возвращает:
[
{"id":1,"name":"User1","email":"user1@email.com","password":"test"},
{"id":2,"name":"User2","email":"user@email.com","password":"test"},
{"id":3,"name":"User3","email":"user@email.com","password":"test"}
]
Использование возврата в подписке дает мне эту ошибку:
ОШИБКА TypeError: Невозможно прочитать свойство 'slice' из неопределенного
в LocalDataSource.push ../ node_modules / ng2-smart-table / lib / источник данных / local / local.data-source.js.LocalDataSource.getElements
(local.data-source.js: 71)
При присвоении объекта непосредственно переменной работает:
var data = [
{"id":1,"name":"User1","email":"user1@email.com","password":"test"},
{"id":2,"name":"User2","email":"user@email.com","password":"test"},
{"id":3,"name":"User3","email":"user@email.com","password":"test"}
];
return data;
Единственное отличие, которое я могу найти, состоит в том, что этот код выдает ошибку при использовании запроса get вместо непосредственного присвоения переменной объекту.
constructor(private service: SmartTableService) {
const data = this.service.getData();
this.source.load(data);
}
Аргумент типа 'void' не может быть назначен параметру типа 'any []'.
Кто-нибудь знает, где я ошибся?
Заранее спасибо.