angular - Angular ngIf设置为true时不显示元素
问题描述
我想在一段时间后使用 ngIf 语句来呈现一些 HTML 代码。为了更容易重现而进行了简化,我的 HTML 如下所示:
<div *ngIf="reload===true">
<p>Hello world</p>
</div>
我的 Typescript 将reload
变量设置为true
两秒后,如下所示:
reload: boolean;
ngOnInit(): void {
this.reload = false;
setTimeout(
function() {
this.reload = true;
console.log(this.reload)
}, 2000);
}
控制台日志记录reload
表明该变量被设置为true
。但是,代码不会在视图中呈现。任何想法为什么?
解决方案
您需要将此分配给新的参考或使用箭头功能
示例: https ://stackblitz.com/edit/angular-eanr3e-pwtjit?file=src%2Fapp%2Fapp.component.ts
推荐阅读
- python - 是否可以将对象或变量从测试函数传递到函数夹具?
- ssas - 表格项目的 SSAS 集成环境
- matlab - 使用 MATLAB spectrogram() 绘制频率 (Hz) 与时间 (sec) 的关系图
- xml - 在布局文件夹中添加 xml 文件时出现 NullPointerException
- scala - 在scala中连接到多个数据库
- wordpress - 我可以使用 wp_insert_user 在不登录的情况下注册用户吗?
- javascript - 有没有办法通过多个值查找数组元素?
- django - 我需要帮助设计一个数据库(并根据他们的角色注册和登录),其中有三个用户
- python - 如何从图像像素阵列创建平均 rgb 向量?
- c# - 当我在 azure devops 管道中运行构建(vstest)时无法打开 Excel