Angular [ngForOf] 用法是什么

2024-01-29

我正在处理的一个项目有下面的代码。你能告诉我它的作用吗?我知道关于*ngFor and *ngIf.但是这些是什么[ngForOf]="topicdata" and ngFor let-topic?我可以以更好的方式简化下面的代码吗?

 <ng-template ngFor let-topic [ngForOf]="topicdata">
        <topic *ngIf="topic.num_of_definitions>0" [data]="topic"></topic>
 </ng-template>

我想要它如下所示。

<topic *ngFor="let topic of topicdata" [data]="topic" 
*ngIf="topic.num_of_definitions>0"></topic>

但随后它显示此错误:

[Angular] 一个元素上不能有多个模板绑定。使用 只有一个名为“template”或以 * 为前缀的属性


The *ngFor指令是 Angular 调用的东西微语法 https://angular.io/guide/structural-directives#microsyntax. 微语法本质上为开发人员提供了一种以更紧凑和简单的方式配置指令的方法。您可以看到某些内容正在使用前面的微语法*.

代码:

<topic *ngFor="let topic of topicdata"> </topic>

例如将等于:

<ng-template ngFor let-topic [ngForOf]="topicdata">
   <topic> ... </topic>
</ng-template>

就像你问题中的例子一样。

简而言之 - 你可以用以下代码替换你的代码*ngFor="let topic of topicdata"并得到相同的结果。

编辑 - 修复:*ngIf 在同一行

Angular 不允许您使用两个或多个结构指令在同一个元素上。所以作为一种使用方式*ngIf在同一行我建议循环出一个<ng-container>元素并把你的<topic>在那里面。

<ng-container *ngFor="let topic of topicdata">
   <topic *ngIf="topic.num_of_definitions > 0"> ... </topic>
<ng-container>

更多内容请关注ng-container here https://angular.io/guide/structural-directives#ngcontainer

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Angular [ngForOf] 用法是什么 的相关文章

  • 提供常量

    Provide 在 RC4 中已被弃用 以前 我可以这样做 provide API URL useValue address 我正在尝试这样的事情 provide API URL useValue address 但这不起作用 我找到了几个
  • Firestore从集合中获取文档ID

    我正在尝试使用 id 检索我的文档 但无法弄清楚 目前我像这样检索我的文档 const racesCollection AngularFirestoreCollection
  • 在 MatDialog Content Angular 7 中添加新行

    我正在使用 MatDialog 并尝试在内容定义中添加新行 两个都 n and 没有这样做 有没有另一种方法无需手动进入 html 并更改它 因为它是可重用的组件 var status MatDialogRef
  • angular2 使用 router.subscribe 来观察 url 变化

    我在用着router event subscribe angular router观察 url 变化以执行if虽然声明event subscribe工作正常 但我的问题是我怎样才能避免重复我的if声明只是为了在这些网址上显示标题 这可能是别
  • Angular2 - 自定义 CSS / JS 文件的文件夹是什么? [复制]

    这个问题在这里已经有答案了 我必须在我的 angular2 应用程序中包含一组 CSS 和 JS 文件 为了将它们包含在内 正确的文件夹是什么当我进行构建时 我应该把它们放进去吗SRC 资产或以下SRC 我的文件夹 定义后 我如何将它们包含
  • Angular 5 - 谷歌未定义(谷歌地图)

    我想在我的 Angular 5 应用程序上使用谷歌地图 但遇到了一些问题 加载视图时 我在 js 控制台中收到错误 LoginComponent Host ngfactory js sm 1 ERROR ReferenceError goo
  • 角度报告进度返回上传的文件总数,而不是进度

    在我的组件中我有这个 this authService addPost post subscribe data gt if data type HttpEventType UploadProgress console log data el
  • Angular 2 错误:无法解析“RouteParams”的所有参数

    尝试使用 RouteParams 获取查询字符串参数 但我只是收到错误 无法解析 RouteParams 的所有参数 确保所有 参数用 Inject 修饰或具有有效类型 注释并且 RouteParams 用 Injectable 修饰 an
  • 使用 Angular2 中的服务在组件之间共享数据

    我正在使用 angular2 开发一个应用程序 我有一个场景 我需要在路由 使用 router navigate 时将复杂数据 对象数组 从一个组件传递到另一个组件 它们不是父子组件 它们是两个独立的组件 我用谷歌搜索了这个 大多数结果描述
  • 更改 Angular 对话框的背景颜色

    我正在尝试更改对话框背景 无需触摸style css file 正如其他一些答案所说 有很多方法可以设置对话框样式 1 此解决方案适用于宽度和高度 但透明背景被 忽略 this dialog open DialogComponent dis
  • 在 Angular 2 Typescript 应用程序中使用 moment.js

    我在 Angular 2 Typescript 应用程序中使用 moment js 库时遇到了困难 即使在阅读了答案之后这个问题 https stackoverflow com q 35166168 1031097我无法让它工作 这就是我到
  • 如何在 Angular 应用程序中动态更改 CSS 类名称?

    我有两个 CSS 类名 如下所示 icon heart color bdbdbd icon heart red color a6b7d4 我的 HTML 包含一个心形图标 div class icon heart div
  • Angular 4 触发自定义事件 - EventEmitter 与dispatchEvent()

    我正在构建指令 该指令应该在元素进入视口时添加类 并且还将触发自定义事件 我找到了两种触发事件的方法 EventEmitterand dispatchEvent 两者都工作正常 在这种情况下应该使用哪个 为什么 对代码的任何其他建议表示赞赏
  • Mapbox 打字稿

    通过关注这个项目 我成功地让 Leaflet 与 Angular 2 和 Webpack 一起工作 Angular 2 传单启动器 https github com haoliangyu angular2 leaflet starter 我
  • 为 Angular 2 配置history.pushState

    我的 Angular 2 应用程序使用默认值HTML 5 history pushState https developer mozilla org en US docs Web API History API Adding and mod
  • Angular 15 参考错误:初始化前无法访问“组件 A”

    我在相互导入独立组件时遇到一个问题 成分A Component standalone true selector app a templateUrl a component html styleUrls a scss imports BCo
  • 从 Angular 6 中的 html 导出 Pdf

    我想从 Angular 6 中的 html 导出 pdf 所以 我正在使用jspdf图书馆 但我不能给出颜色和背景颜色等样式 我怎样才能实现这个目标 如果有其他免费图书馆jspdf 我可以用它 您可以从下面的链接查看演示 DEMO http
  • Angular 4 Http POST 不起作用

    我希望每个人都做得很好 我最近开始使用 Angular 4 4 我一直在尝试将数据发布到我的 api 服务器 但不幸的是它不起作用 我花了大约两天的时间 但仍然没有成功 甚至已经尝试过 6 7 篇文章角 io https angular i
  • Angular AOT 和 Rollup - 无法解析“app.module.ngfactory”

    我正在尝试完成 Angular 的 AOT 教程 https angular io docs ts latest cookbook aot compiler html https angular io docs ts latest cook
  • 有角。 [HMR] 无法应用更新。需要完全重新加载

    我添加 HMR 故事配置 hmr https github com angular angular cli wiki stories configure hmr 到我的 Angular 项目 但不是热重新加载 而是完全重新加载 更新到Ang

随机推荐

  • 在 Fancybox 内输入

    我在使用 Fancybox 时遇到了一个非常奇怪的问题 我似乎无法获取 Fancybox 中显示的输入的 val 它们的值为 然而 Fancybox 外部的输入是有效的 My code
  • 在Python数据类中创建唯一的ID

    我的 python 数据类需要一个唯一的 无符号整数 id 这是非常相似 to 这个帖子 https stackoverflow com questions 58101476 how to create a unique and incre
  • 如何在运行时从下载的 jar 文件加载未知类?

    我正在构建一个客户端服务器应用程序 在运行时 客户端应用程序从服务器应用程序加载 jar 文件并存储它 我将客户端和服务器应用程序都作为 jar 文件运行 我现在想要加载这个下载的 jar 文件中包含的类 例如 我有一个接口 A 和一个实现
  • 如何在python 2.7.6中导入_ssl?

    我的http服务器基于带有Python 2 7 6的BaseHTTPServer 现在我希望它支持ssl传输 即所谓的https 我已经安装了 pyOpenSSL 并重新编译了带有 ssl 支持的 python 源代码 当我尝试时它确实有效
  • 在 DynamoDB 中,如何使用 Java 将元素附加到列表字段

    我在 DynamoDB 中有一条记录 其中包含一个名为 imageData 的字段 该字段是一个项目列表 每个项目都是一个字典 包含键值对的映射 如何将新项目追加到以下记录中的列表中 ssid abcd imageData I tried
  • 结构体数组成员的默认值[重复]

    这个问题在这里已经有答案了 可能的重复 在 C 类中初始化数组和可修改左值问题 https stackoverflow com questions 6647038 intitialzing an array in a c class and
  • 如何合并来自不同输入值的数组?

    有许多具有相同名称和相同类别但具有不同值的文本字段 每个输入都有 1 个按钮 我通过单击每个特定按钮来获取每个字段的值 与 JavaScript 一起使用 我可以将该值放入数组中 但数组不会合并 如果我单击第一个按钮 特定输入字段值将放入数
  • 在 SQL 事件探查器中显示行计数

    是否可以在 SQL Server Profiler 中显示 行计数 列 例如 有 CPU 和 Duration 列 但它可以显示查询返回多少行吗 使用 RowCounts 列怎么样
  • Python 相当于 ruby​​ 的 StringScanner?

    是否有与 ruby 等效的 python 类StringScanner 类 http ruby doc org core classes StringScanner html 我可以将一些东西组合在一起 但如果这已经存在 我不想重新发明轮子
  • Iron 路由器身份验证控制器

    我想知道是否有人可以演示如何在路由器控制器类上使用全局 之前 操作来处理用户身份验证并根据结果显示适当的路由 模板 我的用例是让 AppController 充当身份验证防火墙 并在用户注销时阻止任何子控制器操作 例如 Create a p
  • PIG 中的 GROUP 和 COGROUP 有什么区别?

    我知道 Group 不能处理多个元组 因此我们在 PIG 中有 COGROUP 然而 今天检查时 GROUP 命令对我有用 我正在使用 PIG 0 12 0 我的命令和输出如下 grunt gt grpvar GROUP C by 2 B
  • 找不到有角度的日期管道

    我想在 HTML 中使用 DatePipe timeslot date 但我得到了错误 error NG8004 No pipe found with name date 我的 app module ts 导入公共模块 import Com
  • 无法添加配置转换

    I have 创建了构建配置 http www tomot de en us article 5 asp net how to use web config transforms to replace appsettings and con
  • Scala 中更好的字符串格式

    由于有太多的争论 String format很容易变得太混乱 有没有更强大的方法来格式化字符串 就像这样 This is number string format number gt 1 或者由于类型问题这是不可能的 format我认为需要
  • 在 SQL 中,如何生成 5!56 的每种可能的唯一组合?

    我有一个表 元素 其中有一列 数字 类型为 SMALLINT 其中包含数字 1 到 56 如何使用 SQL 语句生成从 1 到 56 的每种可能组合的 5 个数字的唯一集合 在 APL 编程语言 中 一个简单的二元函数 5 56 就可以解决
  • 有什么方法可以跳过 php 中包含文件的致命错误吗?

    如果我将一个文件包含到 php ini 中如果该 php 中有任何致命错误 那么有什么方法可以跳过该错误 我需要包含此 somefile php 文件 它可能会返回致命错误 对于某些主机 我想为那些主机跳过这个文件 请给我建议 有了这个 您
  • JAX-RS 中日期的 @DefaultValue:now() 和 MAX

    我有一个查询参数如下 GET public Response myFunction QueryParam start final LocalDate start QueryParam end final LocalDate end 为此 我
  • 如何在 Kafka 流中创建一个以 HashMap 作为值的状态存储?

    我需要创建一个状态存储 其中 String 键 HashMap 作为值 我尝试了以下两种方法 First method StateStoreSupplier avgStoreNew Stores create AvgsNew withKey
  • 选项卡面板可在移动视图中滑动吗?

    我有一个选项卡式菜单 我想要选项卡式菜单 ul class tabs 可在移动视图中滑动 EDIT 我找到了一个关于使用的片段Slick JS 我从来不知道这个JS 但我希望它应用这个codepen https codepen io gbh
  • Angular [ngForOf] 用法是什么

    我正在处理的一个项目有下面的代码 你能告诉我它的作用吗 我知道关于 ngFor and ngIf 但是这些是什么 ngForOf topicdata and ngFor let topic 我可以以更好的方式简化下面的代码吗