有人可以说明使用之间的区别吗
我找不到< code>NgContainer
的文档,也不太明白模板标签之间的区别。
每个代码示例都会有很大帮助。
ng模板
<代码>
<div *ngIf="hero" class="name">{{hero.name}}</div>
Angular 将 *ngIf 属性转换为
<ng-template [ngIf]="hero">
<div class="name">{{hero.name}}</div>
</ng-template>
ng容器
在没有合适的宿主元素时用作分组元素
示例:
<div>
Pick your favorite hero
(<label><input type="checkbox" checked (change)="showSad = !showSad">show sad</label>)
</div>
<select [(ngModel)]="hero">
<span *ngFor="let h of heroes">
<span *ngIf="showSad || h.emotion !== 'sad'">
<option [ngValue]="h">{{h.name}} ({{h.emotion}})</option>
</span>
</span>
</select>
这样不行。因为有些HTML元素要求所有的直接子元素都是特定的类型。例如,<代码>
<div>
Pick your favorite hero
(<label><input type="checkbox" checked (change)="showSad = !showSad">show sad</label>)
</div>
<select [(ngModel)]="hero">
<ng-container *ngFor="let h of heroes">
<ng-container *ngIf="showSad || h.emotion !== 'sad'">
<option [ngValue]="h">{{h.name}} ({{h.emotion}})</option>
</ng-container>
</ng-container>
</select>
这会有用的。
更多信息:角度结构方向
ng-模板
用于ng-if
、ng-for
和ng-Swit
等结构指令。如果您在没有结构指令的情况下使用它,则不会发生任何事情,它将呈现。
当您没有合适的包装器或父容器时,可以使用< code>ng-container。在大多数情况下,我们使用< code>div或< code>span作为容器,但是在这种情况下,当我们想要使用多个结构指令时。但是我们不能在一个元素上使用一个以上的结构指令,在这种情况下,< code>ng-container可以用作容器
它们目前(2. x、4. x)都用于将元素组合在一起,而无需引入将在页面上呈现的另一个元素(例如div
或spans
)。
然而,模板
需要讨厌的语法。例如,
<li *ngFor="let item of items; let i = index; trackBy: trackByFn">...</li>
会变成
<template ngFor let-item [ngForOf]="items" let-i="index" [ngForTrackBy]="trackByFn">
<li>...</li>
</template>
您可以使用< code>ng-container来代替,因为它遵循您所期望的并且可能已经熟悉的< code>*语法。
<ng-container *ngFor="let item of items; let i = index; trackBy: trackByFn">
<li>...</li>
</ng-container>
您可以通过阅读GitHub上的此讨论找到更多详细信息。
请注意,在4.x <代码>中
使用
问题内容: 在angularjs中,我想知道ng-submit和ng-click之间有什么区别?具体来说,两者各自的优缺点,以及您什么时候应该彼此取舍?谢谢! *编辑* 我对此进行了更多研究,但我仍然想知道使用ng-submit有什么好处(如果有)?您能否使用ng-click代替所有ng- submit?这会引起任何问题吗?再次感谢! 问题答案: ngSubmit指令绑定到浏览器中的Submit
我试图理解ng if和ng show之间的区别,但在我看来它们是一样的。 选择使用其中一种或另一种有什么区别吗?
问题内容: 我是 AngularJs的 新手。谁能说出ng-model和data-ng-model之间的区别? 与ng-model 使用data-ng-model 问题答案: 最佳实践:建议使用破折号分隔格式(例如ng-bind用于ngBind)。 如果要使用HTML验证工具,则可以改用数据前缀版本(例如ngBind的data-ng-bind)。 出于遗留原因,可以接受上面显示的其他表格,但是我们
问题内容: 据我了解,ng-model可以为分配模型的那个特定元素设置值。鉴于ng值与ng-model有何不同? 问题答案: 它与ng-model结合使用;对于radios和selects,是选择该项目时设置为ng- model的值。用它替代元素的“值”属性,该属性将始终将字符串值存储到关联的ng-model。 在单选按钮的上下文中,它允许您使用非字符串值。例如,如果您有单选按钮“是”和“否”(或
ng-three-template This project was generated with Angular CLI and is designed as a basictemplate for ThreeJS combined with Angularand Bootstrap in Version 4.x The project is setup to use global SCSS o
问题内容: 我正在学习角度。我不明白onLoad和ng-init之间的变量初始化有什么区别。它在哪个范围内创建此变量。 也请给我一些关于隔离范围的想法。 问题答案: 是,可以放置内的指令的,的,不管,而是一个属性特定于指令其功能如同一个。要了解我的意思,请尝试以下操作: 您会看到只有第二个出现。 隔离范围是一个原型,它不从其父范围继承。用外行的术语来说,如果您有一个小部件不需要任意读写父作用域,则