Questions tagged «angular2-template»

对于涉及Angular模板语法的问题,包括:插值,输入(属性)绑定,输出(事件)绑定,双向绑定,局部变量,星形语法等。此标记特定于2.x及更高版本的角度版本

20
角度HTML绑定
我正在编写Angular应用程序,并且要显示HTML响应。 我怎么做?如果我仅使用绑定语法,{{myVal}}那么它将编码所有HTML字符(当然)。 我需要以某种方式结合innerHTML的div对变量的值。

23
Angular 2滚动到路线更改顶部
在我的Angular 2应用程序中,当我向下滚动页面并单击页面底部的链接时,它确实会更改路线并带我进入下一页,但不会滚动到页面顶部。结果,如果第一页很长而第二页的内容很少,则给人的印象是第二页缺少内容。由于仅当用户滚动到页面顶部时内容才可见。 我可以将窗口滚动到该组件的ngInit中的页面顶部,但是,有没有更好的解决方案可以自动处理应用程序中的所有路由?


2
如何使用Angular编写数据属性?
当我尝试使用data attribute我的template,就像这样: <ol class="viewer-nav"> <li *ngFor="#section of sections" data-value="{{ section.value }}"> {{ section.text }} </li> </ol> Angular 2 崩溃: 例外:模板解析错误:由于它不是已知的本机属性,因此无法绑定到“ sectionvalue”(“ ] data-sectionvalue =“ {{section.value}}”> {{section.text}} 我显然缺少语法,请帮忙。

5
如何在主机元素中添加“类”?
我不知道如何添加到我的组件 <component></component> html(component.html)内动态类属性。 我发现的唯一解决方案是通过“ ElementRef”本机元素修改项目。该解决方案似乎做起来应该很简单,有点复杂。 另一个问题是必须在组件范围之外定义CSS,这会破坏组件封装。 有没有更简单的解决方案?像<root [class]="..."> .... </ root>模板里面的东西。

14
Angular 2:由于它不是'input'的已知属性,因此无法绑定到'ngModel'
我试图在Angular 2中实现动态表单。我向动态表单添加了其他功能,例如删除和取消。我已遵循此文档:https : //angular.io/docs/ts/latest/cookbook/dynamic-form.html 我对代码进行了一些更改。我在这里出错。 我如何使此错误消失? 您可以在此处找到完整的代码:http : //plnkr.co/edit/SL949g1hQQrnRUr1XXqt?p=preview,它可以在插件中使用,但不能在我的本地系统中使用。 HTML代码: <div> <form [formGroup]="form"> <div *ngFor="let question of questions" class="form-row"> <label [attr.for]="question.key">{{question.label}}</label> <div [ngSwitch]="question.controlType"> <input *ngSwitchCase="'textbox'" [formControlName]="question.key" [id]="question.key" [type]="question.type" [(ngModel)]="question.value"> <select [id]="question.key" [(ngModel)]="question.value" *ngSwitchCase="'dropdown'" [formControlName]="question.key" > <option *ngFor="let opt of question.options" [ngValue]="opt.key" >{{opt.value}}</option> </select> <input *ngSwitchCase="'checkbox'" [(ngModel)]="question.value" [id]="question.key" [type]="question.type" (change)="question.value = …

2
Angular 2模板中的let- *是什么?
我在Angular 2模板中遇到了一种奇怪的赋值语法。 <template let-col let-car="rowData" pTemplate="body"> <span [style.color]="car[col.field]">{{car[col.field]}}</span> </template> 看来,let-col和let-car="rowData"创建两个新的变量col和car,然后可以绑定到模板中。 资料来源:https : //www.primefaces.org/primeng/#/datatable/templating 这个神奇的let-*语法叫什么? 它是如何工作的? let-something和之间有什么区别let-something="something else"?

4
<ng-container>与<template>
ng-container 在Angular 2文档中提到过,但没有解释它如何工作以及用例是什么。 在ngPlural和ngSwitch指令中特别提到了它。 是否与&lt;ng-container&gt;做相同的事情&lt;template&gt;,还是取决于是否编写了使用其中一个指令的指令? 是 &lt;ng-container *ngPluralCase="'=0'"&gt;there is nothing&lt;/ng-container&gt; 和 &lt;template [ngPluralCase]="'=0'"&gt;there is nothing&lt;/template&gt; 应该是一样的吗? 我们如何选择其中之一? 如何&lt;ng-container&gt;在自定义指令中使用?

7
Angular2-是否可以在模板中访问私有变量?
如果private在组件类上声明了变量,我是否应该能够在该组件的模板中访问它? @Component({ selector: 'my-app', template: ` &lt;div&gt; &lt;h2&gt;{{title}}&lt;/h2&gt; &lt;h2&gt;Hello {{userName}}&lt;/h2&gt; // I am getting this name &lt;/div&gt; `, }) export class App { public title = 'Angular 2'; private userName = "Test Name"; //declared as private }

21
无法绑定到“ ngForOf”,因为它不是“ tr”的已知属性(最终发行版)
我正在使用Angular2最终版本(2.1.0)。当我想显示公司列表时,出现此错误。 在file.component.ts: public companies: any[] = [ { "id": 0, "name": "Available" }, { "id": 1, "name": "Ready" }, { "id": 2, "name": "Started" } ]; 在file.component.html: &lt;tbody&gt; &lt;tr *ngFor="let item of companies; let i =index"&gt; &lt;td&gt;{{i}}&lt;/td&gt; &lt;td&gt;{{item.name}}&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt;


4
在angular2视图模板中传递枚举
我们可以在angular2视图模板中使用枚举吗? &lt;div class="Dropdown" dropdownType="instrument"&gt;&lt;/div&gt; 传递字符串作为输入: enum DropdownType { instrument, account, currency } @Component({ selector: '[.Dropdown]', }) export class Dropdown { @Input() public set dropdownType(value: any) { console.log(value); }; } 但是如何通过枚举配置呢?我想要在模板中这样的东西: &lt;div class="Dropdown" dropdownType="DropdownType.instrument"&gt;&lt;/div&gt; 最佳做法是什么? 编辑:创建了一个示例: import {bootstrap} from 'angular2/platform/browser'; import {Component, View, Input} from 'angular2/core'; export enum DropdownType { instrument …

9
NgFor不会使用Angular2中的Pipe更新数据
在这种情况下,我使用ngFor以下命令在视图中显示学生列表(数组): &lt;li *ngFor="#student of students"&gt;{{student.name}}&lt;/li&gt; 每当我将其他学生添加到列表中时,它都会更新,这真是太好了。 然而,当我给它一个pipe到filter由学生的名字, &lt;li *ngFor="#student of students | sortByName:queryElem.value "&gt;{{student.name}}&lt;/li&gt; 在我过滤学生姓名字段中输入内容之前,它不会更新列表。 这里是plnkr的链接。 Hello_world.html &lt;h1&gt;Students:&lt;/h1&gt; &lt;label for="newStudentName"&gt;&lt;/label&gt; &lt;input type="text" name="newStudentName" placeholder="newStudentName" #newStudentElem&gt; &lt;button (click)="addNewStudent(newStudentElem.value)"&gt;Add New Student&lt;/button&gt; &lt;br&gt; &lt;input type="text" placeholder="Search" #queryElem (keyup)="0"&gt; &lt;ul&gt; &lt;li *ngFor="#student of students | sortByName:queryElem.value "&gt;{{student.name}}&lt;/li&gt; &lt;/ul&gt; sort_by_name_pipe.ts import {Pipe} from 'angular2/core'; @Pipe({ …

10
Angular2禁用按钮
我知道在angular2中,我可以禁用具有[disable]属性的按钮 ,例如: &lt;button [disabled]="!isValid" (click)="onConfirm()"&gt;Confirm&lt;/button&gt; 但是我可以使用[ngClass]或做[ngStyle]吗?像这样: &lt;button [ngStyle]="{disabled : !isValid}" (click)="onConfirm()"&gt;Confirm&lt;/button&gt; 谢谢。

8
如何检查可观察数组的长度
在我的Angular 2组件中,我有一个Observable数组 list$: Observable&lt;any[]&gt;; 在我的模板中 &lt;div *ngIf="list$.length==0"&gt;No records found.&lt;/div&gt; &lt;div *ngIf="list$.length&gt;0"&gt; &lt;ul&gt; &lt;li *ngFor="let item of list$ | async"&gt;item.name&lt;/li&gt; &lt;/ul&gt; &lt;/div&gt; 但是list $ .length在Observable数组中不起作用。 更新: 似乎(list $ | async)?. length给了我们长度,但是下面的代码仍然不起作用: &lt;div&gt; Length: {{(list$ | async)?.length}} &lt;div *ngIf="(list$ | async)?.length&gt;0"&gt; &lt;ul&gt; &lt;li *ngFor="let item of (list$ | async)"&gt; {{item.firstName}} &lt;/li&gt; &lt;/ul&gt; …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.