小编Cur*_*tis的帖子

角度垫选择多个选择更改查找哪个选项已更改

我有<mat select>多种选择.但是我需要知道选择何时发生变化,确切的变化是什么.

例如,如果我有一个列表:

<mat-select (selectionChange)="change($event)" multiple placeholder="Select">
  <mat-option value="1">one</mat-option>
  <mat-option value="2">two</mat-option>
  <mat-option value="3">three</mat-option>
  <mat-option value="4">four</mat-option>
</mat-select>
Run Code Online (Sandbox Code Playgroud)

何时multiple触发它返回新选择的内容.但我需要知道正在改变的新价值是什么.我该如何访问?

例如,如果选择1和3然后用户选择4,我需要知道他们选择了4但我没有看到在事件信息中访问它的方法.

https://stackblitz.com/edit/angular-1e9gsd?file=app/select-overview-example.ts

我尝试将selectionChange部件放在上面,one但它似乎不是受支持的事件触发器.

multi-select angular-material angular

17
推荐指数
2
解决办法
3万
查看次数

找不到模块'@ angular/material-moment-adapter'

为什么这不起作用?我尝试导入角度网站上显示的MomentDateAdapter,但Visual Studio Code一直抱怨它无法找到@ angular/material-moment-adapter.我究竟做错了什么?

版本信息:Angular CLI:1.5.0节点:6.11.0操作系统:darwin x64 Angular:4.4.6 ...动画,通用,编译器,编译器 - cli,核心,表单... http,语言服务,平台 - 浏览器...平台 - 浏览器动态,路由器,tsc包裹

@ angular/cdk:2.0.0-beta.12 @ angular/cli:1.5.0 @ angular/material:2.0.0-beta.12 @ angular-devkit/build-optimizer:0.0.32 @ angular-devkit/core :0.0.20 @ angular-devkit/schematics:0.0.35 @ ngtools/json-schema:1.1.0 @ ngtools/webpack:1.8.0 @ schematics/angular:0.1.1 typescript:2.3.4 webpack:3.8.1

momentjs angular-material2 angular

15
推荐指数
5
解决办法
2万
查看次数

如何在角度服务中通过 API 获取 PDF

我在服务器上设置了一个基于 Java 的 API。 URL = "ex.com"

它有一个返回 PDF 文件的端点。 URL = "ex.com/pdf"

它需要一个带有参数的 POST 请求,该参数指定正在请求哪个 PDF。 params = { location: "report.pdf"}

我希望能够使用 Angular Http.post observable 来获取 PDF,但它不断抛出 HttpErrorResponse Http failure during parsing for http://ex.com/pdf... Unexpected token % in JSON at position 0 at JSON.parse。但它是一个 PDF,我不希望它被解析为 JSON。

这是我的代码:

params = {location: "report.pdf"};
return this.http.post<Response>("http://ex.com/pdf", params)
    .subscribe(
         data => {
            var file = new Blob([data], {type: 'application/pdf'});
            var fileURL = URL.createObjectURL(file);
            window.open(fileURL);
         }
     );
Run Code Online (Sandbox Code Playgroud)

端点与 PostMan 一起使用。我可以使用“发送和下载”选项成功获取 PDF 文件。所以我只需要弄清楚如何在 …

typescript angular

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

材料无线电标签内容不会应用Text Wrap CSS Angular

我有一个固定宽度的无线电组,我想要按钮标签.我已经尝试将类添加到html的每个部分,并为元素添加"white-space:normal",但它只是忽略它.我怎样才能使它工作?

这是我所处位置的一个例子

如果我将这个CSS添加到顶级styles.scss文件,它按预期工作.

.mat-radio-label-content {
  white-space: normal;
}
Run Code Online (Sandbox Code Playgroud)

但我想避免这种情况,并保持css仅与特定组件相关,而不是广泛应用.

angular-material angular

7
推荐指数
1
解决办法
3349
查看次数

如何使用角度材料中的力矩更改日期选择器表单控件值格式

我遵循了material.angular.io上的示例,了解如何将 moment 与材料日期选择器一起使用,并通过提供 MAT_DATE_FORMATS 来更改默认格式。例子在这里。注意:代码在 stackblitz 中无法正常工作,它似乎忽略了提供的日期格式,但在我的环境中确实可以正常工作。

我的问题是当我访问表单控件的值并将其转换为 JSON 时,它总是输出“2018-01-16T15:44:33.897Z”。我只需要它输出日期“2018-01-16”。此外,我希望日期选择器根本不添加时间属性。我怎样才能按照我想要的方式进行这项工作?

我知道你可以调用 moment 的format函数并以任何你想要的方式格式化日期,但我的表单有很多字段,我更愿意只发送form.value到我的 api。如果我想使用 moment 的format函数,我将不得不迭代每个控件,检查它的类型,获取值并单独格式化它,将所有值收集到一个对象中,然后将其发送到我的 api,这是很多额外的编码所以我可以格式化日期控件。

momentjs angular-material angular

5
推荐指数
1
解决办法
5690
查看次数

角度材质:同时输入提示文本和错误文本

我完全复制了Angular Material 电子邮件示例.它有提示文本和错误文本.我的问题是错误文本会覆盖提示文本.如何保留提示文本?

如果我尝试将其更改为简单的跨度标记,则会使控件混乱.

angular-material angular

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

Angular Material Datepicker 对我不起作用

我正在尝试使用日期选择器。我对复选框或单选按钮没有问题。但是当我尝试添加日期选择器时,我总是收到此错误:

错误:模板解析错误:无法绑定到“htmlFor”,因为它不是“md-datepicker-toggle”的已知属性

在我的 app.module.ts 文件中:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { MdButtonModule, 
    MdCheckboxModule,
    MdCardModule,
    MdRadioModule, 
    MdDatepickerModule } from '@angular/material';

import { AppComponent } from './app.component';
import { WeekControlComponent } from './week-control.component';

@NgModule({
declarations: [
  AppComponent,
  WeekControlComponent
],
imports: [
   BrowserModule, 
   FormsModule,
   MdButtonModule, 
   MdCheckboxModule, 
   MdCardModule, 
   MdRadioModule,
   MdDatepickerModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
Run Code Online (Sandbox Code Playgroud)

我有一个 WeekControlComponent:

HTML
<input mdInput [mdDatepicker]="picker" placeholder="Choose a date">
<md-datepicker-toggle mdSuffix [for]="picker"></md-datepicker-toggle>
<md-datepicker #picker></md-datepicker>
Run Code Online (Sandbox Code Playgroud) TS …

angular-material angular

3
推荐指数
1
解决办法
4934
查看次数

如何有选择地在Angular中添加材料自动完成

我希望能够有选择地向输入添加自动完成功能。

目前,我已经尝试*ngIf在垫子自动完成标记中添加一个,但由于输入具有该matAutocomplete属性并且正在寻找自动完成组件,因此会引发错误。我matAutocomplete还想将自动完成功能设置为null,但这不起作用。

这是我的累:

但是我得到:

Error: Attempting to open an undefined instance of `mat-autocomplete`.
Run Code Online (Sandbox Code Playgroud)

这就是我想要的工作方式:

但是不必重复输入和表单字段标签。

angular-material angular

3
推荐指数
1
解决办法
3004
查看次数

formControl.value?.length 有什么作用?

我明白这不是最好的帖子。但是我在材质多选自定义触发器示例中看到了这行代码。

*ngIf="toppings.value?.length > 1" https://stackblitz.com/angular/omvmgjjbnnq?file=app%2Fselect-custom-trigger-example.html

我不明白什么是“?” 在这里做,我什至很难用谷歌搜索它可能是什么(谷歌不喜欢问号)。这是否允许您value安全地调用属性而无需检查是否value已定义或为空?

angular

0
推荐指数
1
解决办法
5391
查看次数