Для тех, кто хочет иметь совместимое с rfc4122 решение 4 с учетом скорости (несколько вызовов в Math.random ()):
function UUID() {
var nbr, randStr = "";
do {
randStr += (nbr = Math.random()).toString(16).substr(2);
} while (randStr.length < 30);
return [
randStr.substr(0, 8), "-",
randStr.substr(8, 4), "-4",
randStr.substr(12, 3), "-",
((nbr*4|0)+8).toString(16), // [89ab]
randStr.substr(15, 3), "-",
randStr.substr(18, 12)
].join("");
}
Вышеуказанная функция должна иметь приличный баланс между скоростью и случайностью.
const httpOptions = {
headers: new HttpHeaders({
"Authorization":
"TOKEN"
})
};
this.http
.get("URL"+id, httpOptions)
.subscribe(data => {
this.elementosDatatable = data['body']['list'];
console.log(this.elementosDatatable);
this.dtTrigger.next();
});
Возврат
(2) [{…}, {…}]
0: {id: 1, description: "Test1", check: 1}
1: {id: 2, description: "test2", check: 0}
length: 2
__proto__: Array(0)
В HTML попробуйте
<tr *ngFor="let elementosDatatable of elemento">
<td>{{elemento.id}}</td>
</tr>
Но цикл foreach в html не возвращает данные, так что теперь, в чем же ошибка? [115 ]
Приведенный вами пример должен быть из более ранней версии Angular. В Angular 7 вы бы сделали это следующим образом:
в app.module.ts:
import { HttpClientModule } from '@angular/common/http';
и в @NgModule: imports: [ HttpClientModule ]
затем в вашем компоненте: import { HttpClient, HttpHeaders } from '@angular/common/http';
забудьте о карте, HttpClient использует общие вызовы и публикует правильный тип:
this.http.get<Person[]>('url', options).subscribe(persons => this.persons = persons /* ... */);