我在从API检索页面上显示的数据时遇到问题。
API 正在返回对象数组,所以我有多个 *ngIf 以便知道要显示的 html div。重要的是要说API不是每次都返回所有对象,这取决于数据。
问题是,在第一次调用 API 后,html 被正确呈现,所有内容都按预期显示。在第二次调用时(输入参数现在当然不同了),API 返回不同的数据(更多对象),但 HTML 是相同的,所以我在页面上缺少几个 div。如果我刷新页面并再次调用 API,我会得到呈现良好的 html。
console.log(this.data)总是显示正确的信息。
我试过用这个changeDetector。detectChanges()和this.ngZone。运行SO上的解决方案,但这并没有解决我的问题。
还有什么我可以尝试的吗?
这是我的代码示例:
this.repoService.getData(а, b)
.subscribe(res => {
this.data = res as ApiData;
})
对于每个对象,我有几个这样的假设
if (this.data.objectA === undefined || this.data.objectA.length === 0) {
this.objectAExist = false;
}
export interface ApiData {
objectA: aData[];
objectB: bData[];
objectC: cData[];
objectD: dData[];
我也有几个像这样的 div 与 ngIf 和 ngFor。
<div *ngIf="objectAExist">
<div *ngFor="let item of data.objectA">
<div>
<p>Label 1</p>
<p>Label 2</p>
<p>Label 3</p>
</div>
<div>
<p>{{ item.Id }}</p>
<p>{{ item.Name }}</p>
<p>{{ item.Description }}</p>
</div>
</div>
</div>
我已经通过将逻辑移到html部分解决了这个问题。
我把这个换了
<div *ngIf="objectAExist">
有了这个
<div *ngIf="data.objectA.length > 0">
一切都如预期的那样运转。
只是一个简单的问题。 让我们将这段代码作为IE: 是 NgIf 内的内容呈现然后从页面中隐藏,还是角度“知道”此 div 不会显示,因此甚至不渲染其中的内容?
我的问题涉及到*ngif指令,一旦*ngif=true我希望在我的'ModClass'指令可以做它的东西之前先渲染html内容。 我试图实现ngOnInit和ngViewInit,但没有运气,因为我相信ngOnInit触发器,而ngif内容正在渲染或可能更早时,父组件生成。 同样对于ngViewInit,我想我需要订阅一些东西,但我不知道我需要订阅什么。(我可能完全错了,我会做更多的研究) 下面的
我想实现回收器视图布局,但我得到错误“呈现问题”。我尝试添加include,但错误仍然存在。我该如何解决问题呢? 错误:I
我第一次接触JSF和JSF标记。xhtml不工作。我的网络。xml文件包含以下代码 我faces.config文件里的代码是 我已经尝试了很多选项,比如将URL映射更改为/faces/*和在Web INF/Lib中包含JAR,但没有用。。。正在寻求帮助。。。。谢谢
我开始使用动画js,我想在我的Angular应用程序中包含一个动画。 在尝试这样做时,我发现当放置动画的< code>div依赖于指令< code>ngIf时,动画不起作用。当ngIf中的条件为真时,图像正确加载,但它没有动画。删除指令解决了这个问题,但我想有条件地展示它。 JS: CSS: HTML工作正常: 超文本标记语言没有动画: HTML也不工作: 我应该做些什么来使动画符合Angular
我正在使用SceneForm1.16和andriod Studio4.1,我正在尝试渲染,但它不工作。 问题: 生成分级文件