关于Angular版本6的问题,来自Google的Web框架。将此标记用于仅针对版本6的Angular问题。对于任何不特定于单个版本的Angular问题,请使用标记Angular。
运行 npm install 命令时出现意外的 JSON 输入错误结束。此问题有解决办法吗?
我一直在尝试运行 npm install 来更新我的节点模块,但不能!,类似的解决方案都不适合我。 这是我收到的错误:
我有这个映射用户*------------------------1 职业。 我想修改一个用户。 因此,我从 list-users.component.html 中选择一个,我将被重定向到modify-user.component.html。 是...
如何在 Angular 6+ 中更改 mat-paginator 中的 itemsPerPageLabel
我正在使用 Angular 6.0.3 和 Angular Material 7.1.0,我的分页器位于单独的组件中(不是 app.component)。到目前为止我已经尝试过: 创建了名为 myPagni 的单独 ts 文件...
似乎在模板内使用 getter 会导致 Angular 变化检测进入循环(getter 被调用数百次)。在阅读了大量类似问题后,我似乎无法......
我想我已经阅读了 100 多篇关于该主题的文章,但我仍然无法弄清楚如何在 Angular 6 中使用 rxjs 链接两个 HttpClient 调用。 假设我有一个具有该签名的服务: 地理服务{
我正在使用 Angular 6 反应形式,并且我在子组件中有一个表: 我正在使用 Angular 6 反应形式,并且我在子组件中有一个表格: <div formArrayName="_server"> <table id="_server" class="table table-striped table-bordered"> <thead> <tr> <th>Host name</th> <th>IP</th> <th>Domain</th> <th>OS</th> <th>Action</th> </tr> </thead> <tbody> <tr *ngFor="let server of serverForms.controls; let i=index" [formGroupName]="i"> <td> <input formControlName="HostName" class="form-control" type="text" /> </td> <td> <input formControlName="IPAddress" class="form-control" type="text" /> </td> <td> <input formControlName="Domain" class="form-control" type="text" /> </td> <td> <input formControlName="OS" class="form-control" type="text" /> </td> <td class="buttonCenter"> <button mat-raised-button color="primary" class="deleteFieldButton" (click)="deleteServer(i)" type="button">delete</button> </td> </tr> </tbody> <button mat-raised-button color="primary" class="addFieldButton" (click)="addServer()" type="button">Add new server</button> </table> 我正在将表格从家长处传递给孩子。 在ts文件中可以看到: childForm; constructor(private parentF: FormGroupDirective) { } ngOnInit() { this.childForm = this.parentF.form; this.childForm.get('_server') as FormArray; } get serverForms() { return this.childForm.get('_server') as FormArray } addServer() { const server = this.childForm.addControl('_server', new FormGroup({ HostName: new FormControl([]), IPAddress: new FormControl([]), Domain: new FormControl([]), OS: new FormControl([]), })) this.serverForms.push(server); } deleteServer(i) { this.serverForms.removeAt(i) } deleteServer 方法运行良好,但 addServer() 不起作用 - 我收到错误:无法读取未定义的属性“setParent”。 请指教! 谢谢! 试试这个,它有效 parent.component.ts import { Component, OnInit } from '@angular/core'; import { FormGroup, FormControl, FormArray, FormBuilder } from '@angular/forms'; @Component({ selector: 'my-app', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent implements OnInit { name = 'Angular'; form; constructor() { this.form = new FormGroup({ arr: this.buildArray() }) } ngOnInit() { console.log(this.form.get('arr').value); } get arr() { return this.form.get('arr').value; } buildGroup() { return new FormGroup({ HostName: new FormControl([]), IPAddress: new FormControl([]), Domain: new FormControl([]), OS: new FormControl([]), }) } buildArray() { return new FormArray([this.buildGroup()]) } deleteServer(i) { this.form.get('arr').removeAt(i) } trackByFn(index: any, item: any) { return index; } } child.component.ts import { Component, OnInit } from '@angular/core'; import { FormGroup, FormControl, FormArray, ControlContainer, FormGroupDirective } from '@angular/forms'; @Component({ selector: 'app-table', templateUrl: './table.component.html', styleUrls: ['./table.component.css'], viewProviders: [{ provide: ControlContainer, useExisting: FormGroupDirective }] }) export class TableComponent implements OnInit { childForm; constructor(private parentF: FormGroupDirective) { } ngOnInit() { this.childForm = this.parentF.form; this.childForm.get('_server') as FormArray; } get serverForms() { return this.childForm.get('arr') as FormArray } add() { this.childForm.get('arr').push(this.buildGroup()); } buildGroup() { return new FormGroup({ HostName: new FormControl(''), IPAddress: new FormControl(''), Domain: new FormControl(''), OS: new FormControl(''), }) } } 示例:https://stackblitz.com/edit/angular-kin9jq 我在不使用 FormGroupDirective 的情况下做 FormArray 考虑这样 组件 childForm: FormArray; constructor() { this.childForm = new FormArray([]); } addServer() { this.childForm.push(new FormGroup({ HostName: new FormControl(), IPAddress: new FormControl(), Domain: new FormControl(), OS: new FormControl(), })); } deleteServer(i) { this.childForm.removeAt(i) } 这就是我在模板中所做的更改 <div formArrayGroup="childForm"> NGFor <tr *ngFor="let frm of childForm.controls; let i=index" [formGroup]="frm"> stackblitz 演示 👌
Angular 6 服务:提供:“root”与 CoreModule
在 Angular 6 中,以下是创建单例服务的首选方法: 从 '@angular/core' 导入 { Injectable } ; @Injectable({ 提供于: 'root', }) 导出类 UserService { } 来自安古...
为什么我应该在 Typescript / Angular 中使用接口(模型)?
在我看来,用模型定义对象似乎使它们变得僵化且不易更改,从而更容易在将来破坏应用程序并添加代码行而没有任何好处。对于...
我尝试向某些日期(日期数组)添加自定义类,有什么建议吗? (突出显示一些日期 - 活动) html: 我尝试向某些日期(日期数组)添加自定义类,有什么建议吗? (突出显示一些日期 - 活动) html: <mat-card-content> <div class="date-picker"> <mat-calendar [selected]="selectedDates" (selectedChange)="selectedDates = $event" #calendar> </mat-calendar> </div> ts: this.selectedDates = [new Date('2014-08-28T11:13:59'), new Date('2014-07-27T11:13:59')]; 有什么想法吗? html: <mat-calendar [minDate]="minDate" [maxDate]="maxDate" [selected]="selectedDates" (selectedChange)="selectedChange($event)" [headerComponent]="displayMonth()" [startAt]="startDate"></mat-calendar> .ts: import { Component, OnInit, Input, OnChanges, ViewEncapsulation, ElementRef, Renderer2 } from '@angular/core'; constructor( private elRef: ElementRef, private renderer: Renderer2 ) {} displayMonth() { let HeaderElsClass = this.elRef.nativeElement.getElementsByClassName('mat-calendar-body-cell'); let orderDate = this.convertDate.dateFormat(this.tempOrdersDate, 'MMMM D, YYYY'); // tempOrderDate is epoch array, i convert from epoch to date for(let index in HeaderElsClass) { if(typeof HeaderElsClass[index] === 'object') { let headerClass = HeaderElsClass[index].getAttribute('aria-label'); orderDate.find(each => { if(each === headerClass) { this.renderer.addClass(HeaderElsClass[index], 'mat-calendar-body-active'); this.renderer.setStyle(HeaderElsClass[index], 'font-weight', '900'); } return false; }) } } } 这在我的代码中运行良好。我希望对你有用。 谢谢阿卜杜拉
我正在使用 Angular 6,并且有一个可打开对话框的按钮。在我的对话框中,我有一个获取用户数据的表单,然后有两个按钮用于提交和取消。我尝试在
在 Angular 6 中如何使 url 模式不区分大小写?
就我而言,我想以不区分大小写的方式支持相同的网址。 示例:它应该支持所有 url 本地主机:1029/文档 本地主机:1029/文档 本地主机:1029/文档 本地主机:
在使用 Angular 6 实现 Stripe 时,我收到 ERROR 错误:mat-form-field 必须包含 MatFormFieldControl
要在我的 Angular 6 Material 项目中实现 Stripe,我得到 mat-form-field 必须包含 MatFormFieldControl。 为了集成,我使用 ngx-stripe。 下面是我的代码: .ts 文件: 导入 {
如何将参数(action.payload)传递给ngrx/effects中的服务?
我是 ngrx-6 的新手。 效果将侦听操作“LOAD_COURSE_DETAILS”,并应使用 course_id (action.payload) 调用服务。但我收到错误 属性“toFixed”是
我正在学习 Angular,我对这些 observable、observer 和 subscribe 感到困惑 事物。所以请解释一下。
如何测试 Angular 的 canActivate 函数,该函数返回一个函数,该函数又返回一个布尔值? 我尝试创建 ActivatedrouterSnapshot 和 routerStateSnapshot 的对象并传递...
我有一个 if 块,如下所示: if (this.totalTenants === 1) { this.newTenants.tenant2 = Object.assign({ name: null, number: null }, this.emptyTenant); this.newTenants.tenant3 = 对象。
当我尝试使用 cosmicjs 为我的 Angular 6 应用程序提供服务时,出现以下错误: 未捕获的引用错误:进程未定义 在 Object../node_modules/cosmicjs/dist/index.js (我...
当 RowData 更改时,Angular 中的 Ag-grid 不会刷新
我已经在 Angular 6 中完全设置了一个 ag-grid,它可以在页面启动时正确显示所有 rowData。但是,当将项目添加到 rowData 时,ag-grid 的显示不会更新...
为什么使用自定义全局验证器时,mat-error 不会显示在 Angular Material 6 中的 mat-form 字段内
我正在使用角材料6,我在mat-form-field内有一个验证,当在mat-form-field之后移动到正确显示的mat-error时,不显示mat-error。 无效代码:...
我制作了一个带有路由组件的 Angular 项目。我已经处理了一些 URL 处理,例如用户手动点击 URL:如果 URL 存在,它将转到 t... 中定义的 URL 组件。