找不到名字" MAT_DATE_LOCALE"使用Material.angular Datepicker

时间:2017-10-26 11:58:17

标签: angular angular-material2

根据此处的文档https://material.angular.io/components/datepicker/overview将区域设置代码设置为您希望通过添加

提供的区域代码
providers: [
    {provide: MAT_DATE_LOCALE, useValue: 'en-GB'},
]

然后我的应用程序不会编译,因为它告诉我它找不到名称MAT_DATE_LOCALE。我在这里遗漏了一些东西,因为我必须自己定义吗?虽然,我无法想到将它放在哪里,因为它在模块类中都是如此。

5 个答案:

答案 0 :(得分:11)

在Angular 9中执行导入:

 { MAT_DATE_LOCALE } from '@angular/material/core';

我想必须在导入中输入指定的路径导入。优化的东西。

对不起,我的英语。

从Angular 9中,无法通过@ angular / material导入任何组件。您将使用单独的辅助入口点,例如@ angular / material / button。

Top New Features of Angular 9

答案 1 :(得分:3)

当您将项目依赖关系从旧版本升级到新版本时,某些模块将移至不同的命名空间,因此您需要手动更改它们

我正在使用角度9.1.2

我用过这个

import { MAT_DATE_LOCALE } from '@angular/material/core';

代替

import { MAT_DATE_LOCALE } from '@angular/material';

答案 2 :(得分:1)

就我而言,我导入了此

import { MatInputModule, MatNativeDateModule, MAT_DATE_LOCALE } from '@angular/material';
import { MatDatepickerModule } from '@angular/material/datepicker';

在我的material.module.ts中

imports: [
  ....
  MatDatepickerModule,
  MatNativeDateModule
],
exports: [
   ...
   MatDatepickerModule,
   MatNativeDateModule
],
providers: [
   {provide: MAT_DATE_LOCALE, useValue: 'pt-BR'},
],

以这种方式进行工作

答案 3 :(得分:1)

要使用MAT_DATE_LOCALE,必须像下面这样显式导入

import { MAT_DATE_LOCALE } from '@angular/material';

请注意,不应将MAT_DATE_LOCALE添加到导入项[]数组中。

答案 4 :(得分:0)

有类似的问题,这就是你要做的。 import {MatNativeDateModule} from '@angular/material @ngModule({ import: [MatNativeDateModule] })这应该有效。