gpt4 book ai didi

json - Observable 和 http json Angular 的问题

转载 作者:可可西里 更新时间:2023-11-01 16:32:13 26 4
gpt4 key购买 nike

我有一个问题,因为我从来没有在 * nFor 中绘制变量“datos”,我认为问题出在渲染中,由于这个原因实现了“Observable”,但它仍然不起作用

感谢您的帮助!

"header-menu.component.ts"

import { Component, Input, OnInit, ChangeDetectionStrategy } from '@angular/core';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
import 'rxjs/add/operator/catch';
import { Observable } from 'rxjs/Observable';

@Component({
moduleId: module.id,
selector: 'as-headermenu',
templateUrl: 'header-menu.html',
changeDetection: ChangeDetectionStrategy.OnPush
})

export class HeaderMenuComponent implements OnInit {
datos = []; // Aqui se carga el json
private ruta = 'assets/json_header_menu.json';

constructor(private http: Http) {}

ngOnInit() {
this.loadJson().subscribe(
vdatos => this.datos = vdatos,
err => console.log(err),
() => console.log(this.datos));
console.log(this.datos);
}

loadJson(): Observable<any[]> {
return this.http.get(this.ruta)
.map(res => res.json());
}
}

“标题菜单.html”

<ul *ngIf="datos"> <li *ngFor="let dato of datos | async; let i =
index"> {{ dato.url }} {{ dato.icono }} {{ dato.titulo }} {{ i }}
</li>

“header-menu-module.ts”

import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { BrowserModule } from '@angular/platform-browser';
import { HttpModule } from '@angular/http';

import { HeaderMenuComponent } from './index';

@NgModule({
declarations: [
HeaderMenuComponent
],
imports: [
RouterModule,
BrowserModule,
HttpModule
],
exports: [
HeaderMenuComponent
]
})
export class HeaderMenuModule {
}

图像控制台错误:Console Error

最佳答案

你在这里不需要异步管道,没有它它应该可以工作,

<ul *ngIf="datos"> <li *ngFor="let dato of datos; let i =
index"> {{ dato.url }} {{ dato.icono }} {{ dato.titulo }} {{ i }}
</li>

关于json - Observable 和 http json Angular 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44724854/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com