- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在玩转 angular 7 和 ivy,但我无法得到一个 for 循环来吐出任何值。
我的代码:
@Component({
selector: 'app-asset-list',
templateUrl: './asset-list.component.html',
styleUrls: ['./asset-list.component.scss']
})
export class AssetListComponent implements OnInit {
asset = {name: 'test'};
assets: Asset[] = [this.asset];
cols: any[] = [];
colors: any[] = ['red', 'blue', 'yellow']; // EDIT: added this for debug
constructor(private assetService: AssetService) {
}
ngOnInit() {
// this.assetService.getAssets().subscribe((value => this.assets = value));
this.cols = [
{field: 'name', header: 'Name'}
];
}
}
我的 html:
<h3>Asset List</h3>
<!--DEBUG-->
{{ assets | json }}
{{ cols |json}}
<!--Does not show-->
<div *ngIf="assets.length > 0">
Oh, its greater than 0.
</div>
<!--also does not show-->
<ul>
<li *ngFor="let a of assets">
{{a}}
</li>
</ul>
<!--also does not show-->
<ul>
<li *ngFor="let c of cols">
{{c}}
</li>
</ul>
<!--EDIT: added for debug... also does not show?-->
<ul>
<li *ngFor="let c of colors">
{{c}}
</li>
</ul>
<!--ultimately, this is what I wanted, but the above don't even work-->
<p-table [value]="assets">
<ng-template pTemplate="header">
<tr>
<th *ngFor="let col of cols">
{{col.header}}
</th>
</tr>
</ng-template>
<ng-template pTemplate="body" let-asset>
<tr>
<td *ngFor="let col of cols">
{{asset[col.field]}}
</td>
</tr>
</ng-template>
</p-table>
和输出:
如您所见,我删除了服务返回的 Observable
,但它仍然不起作用。我希望在屏幕上看到一些东西,因为调试行显示了一些东西。我错过了什么?
我添加了一个字符串数组 colors
只是为了进行更多的完整性检查……但仍然没有显示。控制台中没有错误。
我的 package.json 依赖项:
"dependencies": {
"@angular/animations": "7.2.4",
"@angular/common": "7.2.4",
"@angular/compiler": "~7.2.4",
"@angular/core": "7.2.4",
"@angular/forms": "7.2.4",
"@angular/platform-browser": "~7.2.0",
"@angular/platform-browser-dynamic": "~7.2.0",
"@angular/router": "~7.2.0",
"core-js": "^2.5.4",
"primeicons": "^1.0.0",
"primeng": "^7.0.5",
"rxjs": "~6.3.3",
"tslib": "^1.9.0",
"zone.js": "~0.8.26"
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.13.0",
"@angular/cli": "~7.3.1",
"@angular/compiler-cli": "7.2.4",
"@angular/language-service": "7.2.4",
"@types/node": "~8.9.4",
"@types/jasmine": "~2.8.8",
"@types/jasminewd2": "~2.0.3",
"codelyzer": "~4.5.0",
"jasmine-core": "~2.99.1",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~3.1.1",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1",
"karma-jasmine": "~1.1.2",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~5.4.0",
"ts-node": "~7.0.0",
"tslint": "~5.11.0",
"typescript": "~3.2.2"
}
我无法在 stackblitz 中复制...我认为问题与 Ivy 有关。也就是说,here is a stackblitz .
最佳答案
我在新的 CLI 项目中运行 --experimentalIvy
标志时遇到了同样的问题。
我还创建了一个问题: https://github.com/angular/angular/issues/30081
话虽如此,我尝试使用以下方法将核心和 cli 更新到下一个版本:
ng update @angular/core@next @angular/cli@next
它适用于 V8.0.0-beta.14,所以...我不确定有人会在版本 7 中修复它,而版本 8 即将发布。
还创建了一个带有分离分支的 Github 存储库以便于复制,您可以在这里查看:https://github.com/eliraneliassy/ivy-ngfor-bug
关于angular - ngFor 产生空内容 - Angular 7 IVY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54693678/
我有 Angular + Firebase 应用程序。在我的一个组件中,我从 Firebase DB 获取元素并使用 *ngFor 将它们绑定(bind)到模板中: {{ comment.te
以下场景在 javascript 中会很简单,但我在 Angular 中遇到了一些问题。 我有一个像这样的数组: array a = ( "id" = 0, name = random(), colu
我有一个由部分组成的 firebase json 对象。部分内部还有部分线程。我正在尝试迭代这些部分,然后迭代线程。问题是我收到此错误 InvalidPipeArgument:管道“AsyncPipe
我无法在任何地方找到对差异的准确描述。与 *ngIf 和 ngIf 相同 *ngFor的例子 和一个ngFor的例子 最佳答案 区别在于*ngFor转换为 ) 允
这是一个我想实际解决的示例问题。我们将非常感谢您的帮助。非常感谢! 最佳答案 除非将其中一项设置为变量,否则无法直接显示 *ngFor 之外的一项
我如何在 Angular 2 中使用 *ngFor 遍历多维数组。下面是我使用的 DOM 包装器: 0 }"> {{menuName.name}} Pages
标题可能看起来很奇怪,但我所说的基本上是this link。正在做。 我正在寻找一种方法来使用当前迭代的 person在在*ngFor之外范围。 在他使用的链接中 ng-repeat-start和 n
我有以下对象: itemList = { "0": [], "1": [], "2": [], "3": [] }; 我还有以下 *ngFor: 如您所
我试图在我的 Angular 应用程序中显示对话列表,然后在每个对话标题下显示这些不同对话中包含的消息。 这是我最新的代码- HTML: {{ conversation.conversat
我想从 *ngFor 中删除 *ngFor 中的项目。 当我删除回复“test2”时, 在我添加其他回复后,“test3”变为空。
在表头中,我有动态列和搜索排序功能。但对于特定的列,我需要禁用排序功能。在表中 {{colName}}
我是 Angular 2 的初学者。我正在尝试创建一个具有动态表单的表,创建了表并且还绑定(bind)了值但是我无法访问 formControlName 中的值,尝试了下面的代码但它没有用。 有人可以
我正在使用Flowbite(flowbite.com),这是一个Tailwind CSS插件,正如你在我的Angular项目中所知道的。。一切都工作得很好,除了当我调用一个抽屉按钮内的表,这是渲染与n
{{ recipe.name }} {{ recipe.description }} 由于这条消息,我不能在这
我如何使用 ngFor 循环遍历以下对象数组并仅获取月份的名称? { "Jan": { "name": "January", "short": "Jan", "number
我正在 Angular 6 中开发一个 Web 应用程序。我从 Firebase 收到一组对象,并尝试使用 ngFor 向用户显示详细信息。我的对象数组是这样的: export interface C
抱歉,我不能在这里发布所有代码。但是,如果你能给我一些关于需要做什么的提示,我将不胜感激。 让我试着解释一下我的困境。 所以,这是我一直在尝试使用的代码片段 ngFor和 ngIf上:
我正在用数组中的数据填充表格,我想将自定义输入集中在表格的最后一个元素上,所以我有这个: {{ a few table fields}}
我有来自服务器的以下 JSON 响应: stuff = [ { "_id":"59080892c88561d46736a18d", "name":"Miscellaneo
我使用以下方法创建了一个 Angular 库: ng new my-workspace --create-application=false cd 我的工作区 ng 生成库 my-lib 图书馆工作。
我是一名优秀的程序员,十分优秀!