我正在尝试使用matInput datepicker组件在我的组件控制器中设置日期格式,但是当我尝试加载存在这些组件的页面时,我在控制台中收到以下错误:
错误:MatDatepicker:找不到DateAdapter的提供程序。您必须在应用程序根目录中导入以下模块之一:MatNativeDateModule,MatMomentDateModule,或提供自定义实现。
问题是我尝试在我的app模块,主app组件和子组件中包含这个,我试图引用moment()
方法,但我仍然得到错误。我也尝试过使用相同结果的MatNativeDateModule。
这是我正在导入的模块依赖项:
import { MatMomentDateModule } from '@angular/material-moment-adapter';
Datepicker元素:
<input matInput [matDatepicker]="invoiceDate" [max]="maxDate" name="date" placeholder="DD/MM/YYYY" formControlName="date">
答案 0 :(得分:7)
您是否已将其添加到模块的导入中?
import { MatMomentDateModule } from "@angular/material-moment-adapter";
@NgModule({
/* etc. */
imports: [ BrowserModule, /* etc. */, MatMomentDateModule, /* etc. */ ],
/* etc. */
}
我用
安装了它npm i @angular/material-moment-adapter --save
一切正常。
答案 1 :(得分:5)
Angullar 8,9
public function ref_money()
{
$userid = $this->user->id;
$user = User::where('id', $userid)->first();
$ref_money = $user->ref_money;
if($ref_money == 0) {
return [
'msg' => 'You don\'t money have refferals',
'type' => 'error'
];
}
if($ref_money < 320) {
return [
'msg' => 'You need 320 coins on balance to take money',
'type' => 'error'
];
} else {
User::where('id', $user->id)->update([
'money' => $user->money + $ref_money,
'ref_money' => $user->ref_money - $ref_money
]);
return [
'title' => 'You take '.$this->user->ref_money.' for refferals',
'success' => true,
];
}
}
Angular 7及以下
import { MatDatepickerModule } from '@angular/material/datepicker';
import { MatNativeDateModule } from '@angular/material/core';
您需要在导入下同时导入MatDatepickerModule和MatNativeDateModule,并在提供程序下添加MatDatepickerModule
import { MatDatepickerModule, MatNativeDateModule } from '@angular/material';
答案 2 :(得分:2)
添加
import { MatMomentDateModule } from "@angular/material-moment-adapter";
并安装
npm i @angular/material-moment-adapter --save
还有依赖
npm i moment --save
答案 3 :(得分:1)
我在MatDatepickerModule和MatNativeDateModule上遇到了类似的错误
错误错误:“ MatDatepicker:未找到DateAdapter的提供程序。必须在应用程序根目录下导入以下模块之一:MatNativeDateModule,MatMomentDateModule或提供自定义实现。”
我通过这样做解决了这个问题
import { MatNativeDateModule } from '@angular/material/core';
@NgModule({
imports:[ MatDatepickerModule,
MatNativeDateModule],
providers: [MatNativeDateModule, MatDatepickerModule],
})
答案 4 :(得分:0)
只需将以下两个模块都导入app.module.ts
import { MatDatepickerModule, MatNativeDateModule} from '@angular/material';
imports: [
MatDatepickerModule,
MatNativeDateModule
]
就是这样。