标签: angular-material2

Jhipster/md-button不是已知元素

您好我正在使用JHipster 4.0.1

我想将angular 2材料集成到我的home.component中.

我做了:npm install material npm install angular2/{core,button}

 <html><head></head>
<body> 
<md-button>Hello </md-button></body></html>
Run Code Online (Sandbox Code Playgroud)

错误是:md-button不是已知元素

jhipster material-design angular-material angular-material2

4
推荐指数
1
解决办法
2512
查看次数

How to trigger Material2 &lt;mat-error&gt; to be displayed on input-change

Given the example at https://material.angular.io/components/form-field/overview

<div class="example-container">
  <mat-form-field>
    <input matInput placeholder="Enter your email" [formControl]="email" required>
    <mat-error *ngIf="email.invalid">{{getErrorMessage()}}</mat-error>
  </mat-form-field>
</div>


import {Component} from '@angular/core';
import {FormControl, Validators} from '@angular/forms';

/** @title Form field with error messages */
@Component({
  selector: 'form-field-error-example',
  templateUrl: 'form-field-error-example.html',
  styleUrls: ['form-field-error-example.css']
})
export class FormFieldErrorExample {
  email = new FormControl('', [Validators.required, Validators.email]);

  getErrorMessage() {
    return this.email.hasError('required') ? 'You must enter a value' :
        this.email.hasError('email') ? 'Not a valid email' :
            '';
  }
}
Run Code Online (Sandbox Code Playgroud)

The error seems to be …

angular-material2 angular5

4
推荐指数
1
解决办法
1万
查看次数

垫菜单和按钮在不同的组件

我有

<mat-menu #saveMenu="matMenu">...</mat-menu>
Run Code Online (Sandbox Code Playgroud)

在app-save-document companent和

<app-save-document></app-save-document>
<button mat-icon-button [matMenuTriggerFor]="saveMenu">
Run Code Online (Sandbox Code Playgroud)

在另一个companent.

如果我在不同的组件中有[matMenuTriggerFor]的mat-menu和按钮,我可以做些什么来让按钮看到菜单吗?

我现在有 ERROR Error: mat-menu-trigger: must pass in an mat-menu instance.

angular-cli angular-material2

4
推荐指数
2
解决办法
5434
查看次数

角材料2选择零部件对齐

我正在使用材料组件,我想知道是否可以将下拉选择的大小设置为与mat-form-field的大小完全相同。

默认组件如下:

在此处输入图片说明

我想对其进行修改,以使下拉列表的大小与mat-form-field完全相同,如下所示:

在此处输入图片说明

但我不知道如何修改下拉容器的宽度和位置,请问如何修改宽度和位置。

这是该组件的一个小示例:

https://stackblitz.com/angular/rllajkqybnmy

javascript angular-material angular-material2 angular

4
推荐指数
1
解决办法
1989
查看次数

Angular Material 2 Stepper-下一步

我有一个简单的步进器,分为两个步骤。

第一步,有一个带有两个无线电输入的表格。我想通过单击一个单选按钮(没有任何提交按钮)切换到下一步。我正在使用stepper.next()方法来实现这一目标。

问题是-仅在两次单击无线电输入后才切换到下一步。

是否可以通过仅单击一次来切换到下一步?

这是一个有问题的演示https://angular-srtsoi.stackblitz.io

编辑器:https : //stackblitz.com/edit/angular-srtsoi?embed=1&file= app/ stepper-overview-example.ts

angular-material2 angular

4
推荐指数
1
解决办法
4362
查看次数

使用Angular 5在Angular Material自动完成显示中绑定'this'

我试图使用Material Angular自动完成功能,但遇到了displayWith函数,该函数显然可以用作选择时显示的输出。我想在显示功能中调用自定义功能,例如

displayFn(id) {
 return this.getValue(id)
}
getValue(id) {
 /**return some string
}
Run Code Online (Sandbox Code Playgroud)

对于自动完成

<mat-autocomplete #autoOutlet="matAutocomplete" [displayWith]="displayFn">
  <mat-option *ngFor="let option of outletFilterOptions | async [value]="option.outletId">
   {{ option.outletName }}
  </mat-option>
</mat-autocomplete>
Run Code Online (Sandbox Code Playgroud)

如您所见,我使用id而不是整个对象作为模型。

当显示函数返回未定义this.getValue的错误时,我在Stack Overflow中搜索了一种解决方案,并建议我使用类似的内容[displayWith]="displayFn.bind(this)"。

但不幸的是,这对我也不起作用。我正在使用Angular材质5.1.0。

我有什么想念的吗?

javascript angular-material angular-material2 angular angular-material-5

4
推荐指数
2
解决办法
2227
查看次数

Angular 5材质的小吃栏仅对于自定义ErrorHandling无法正确显示,否则可以正常工作

Angular 5材质,材质小吃栏仅对于自定义ErrorHandling无法正确显示,否则工作正常:

我正在尝试使用材质小吃栏显示后端错误,问题是第一次触发时,它出现在错误的位置(不是应该在底部中间,而是在左边),并且永远存在在那里而不会消失(根据我的配置,它应该在2秒后自动消失)

下次出现时,它将正确显示并在2秒钟后消失。

请在此处尝试该问题: 显示我的问题的stackblitz示例。

这里是stackblitz代码

谢谢

javascript typescript angular-material2 angular angular5

4
推荐指数
1
解决办法
1654
查看次数

一个组件中的多个材质分页在Angular中不起作用

我尝试创建一个包含两个dataTables的组件,每个组件都带有另一个dataSource。由于我的原因,我的表格在加载组件后不可见,*ngIf因此我无法使用它,ngAfterViewInit()而使用的是用户在Github上指出的解决方案:

  private paginator: MatPaginator;
  private reportingPaginator: MatPaginator;
  private sort: MatSort;
  private reportingSort: MatSort;

  @ViewChild(MatSort) set matSort(ms: MatSort) {
    this.sort = ms;
    this.reportingSort = ms;
    this.setDataSourceAttributes();
  }

  @ViewChild(MatPaginator) set matPaginator(mp: MatPaginator) {
    this.paginator = mp;
    this.reportingPaginator = mp;
    this.setDataSourceAttributes();
  }

  setDataSourceAttributes() {

      this.dataSource.paginator = this.paginator;
      this.dataSource.sort = this.sort;

      this.reportingDataSource.paginator = this.reportingPaginator;
      this.reportingDataSource.sort = this.reportingSort;

}
Run Code Online (Sandbox Code Playgroud)

但是我仍然无法正常工作。当两个分页器都包含在中时,我的分页不起作用@ViewChild(MatPaginator)。如果我只包括其中一个

@ViewChild(MatPaginator) set matPaginator(mp: MatPaginator) {
    this.reportingPaginator = mp;
    this.setDataSourceAttributes();
}
Run Code Online (Sandbox Code Playgroud)

要么

@ViewChild(MatPaginator) set matPaginator(mp: MatPaginator) { …
Run Code Online (Sandbox Code Playgroud)

typescript angular-material angular-datatables angular-material2 angular

4
推荐指数
2
解决办法
6392
查看次数

Angular 2+材料垫-芯片列表formArray验证

如何验证mat-chip已将添加到中mat-chip-list。我正在使用ReactiveForms。我已经尝试过required验证器。

该值可以是名称列表,因此在提交表单之前,我需要确保名称列表中至少有1个名称。如果列表为空,mat-error则应显示错误消息。使用required验证器会使表单无效,而不管在列表中添加名称如何。

编辑:反应形式

我试图做一个自定义验证器,现在使用的是反应式表单,而不是模板驱动的表单,但是我无法使它正常工作。我编辑了以下代码以反映我的更改,并创建了此https://stackblitz.com/edit/angular-4d5vfj

的HTML

<form [formGroup]="myForm">
  <mat-form-field class="example-chip-list">
    <mat-chip-list #chipList formArrayName="names">
      <mat-chip *ngFor="let name of myForm.get('names').controls; let i=index;"
        [formGroupName]="i"
        [selectable]="selectable"
        [removable]="removable"
        (removed)="remove(myForm, i)">
        <mat-icon matChipRemove *ngIf="removable">cancel</mat-icon>
      </mat-chip>

       <input placeholder="Names"
          [matChipInputFor]="chipList"
          [matChipInputSeparatorKeyCodes]="separatorKeysCodes"
          [matChipInputAddOnBlur]="addOnBlur"
          (matChipInputTokenEnd)="add($event, asset)">
    </mat-chip-list>
    <mat-error>Atleast 1 name need to be added</mat-error>
  </mat-form-field>
</form>
Run Code Online (Sandbox Code Playgroud)

TS

import {COMMA, ENTER} from '@angular/cdk/keycodes';
import {Component} from '@angular/core';
import {FormGroup, FormControl, FormBuilder, FormArray} from '@angular/forms';
import {MatChipInputEvent} from '@angular/material';

@Component({
  selector: 'chip-list-validation-example', …
Run Code Online (Sandbox Code Playgroud)

angular2-forms angular-material2 angular angular-reactive-forms

4
推荐指数
2
解决办法
3285
查看次数

角材料嵌套拖放

我正在尝试实现一个可重排序的列表组,其中包含可以使用@ angular / cdk / drag-drop在列表之间移动的元素,尽管我遇到了一些问题。

我设法分别创建了实现单个拖放的单个示例,尽管将它们放在一起似乎无法并行实现这两个功能。

在组之间移动项目:https : //stackblitz.com/edit/items-move

重新排序群组:https : //stackblitz.com/edit/groups-move

两者在一起:https : //stackblitz.com/edit/groups-items-move

在“ 两个在一起”示例中,似乎拖动单个项目按预期进行,但组的重新排序不起作用,但是,当移到父级之外的第cdkDropListGroup4行上的情况相反,则发生了现在可以重新排序,但随后无法在组之间移动项目。cdk-drag-drop-connected-sorting-group-example.html<cdk-drop-list>

关于我要去哪里的任何指针吗?

drag-and-drop angular-material2 angular

4
推荐指数
1
解决办法
3336
查看次数