首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ionic-native/日期选择器StaticInjectorError

ionic-native/日期选择器StaticInjectorError
EN

Stack Overflow用户
提问于 2019-07-22 22:02:00
回答 1查看 1.3K关注 0票数 3

因此,我尝试使用DatePicker,但我得到了一个StaticInjectorError

下面是我尝试过的:

代码语言:javascript
复制
import {Component} from '@angular/core';
import {TextService} from '@core/services/text/text.service';
import {Router} from '@angular/router';
import {FeaturePage} from '@feature/paths';
import {User} from '@core/classes/user';
import {DatePicker} from '@ionic-native/date-picker/ngx';

@Component({
    selector: 'app-setup',
    templateUrl: 'setup.page.html',
    styleUrls: ['setup.page.scss'],
})
export class SetupPage {

    user: User;

    constructor(private textService: TextService, private router: Router, private datePicker: DatePicker) {
        this.user = new User();

        this.datePicker.show({
            date: new Date(),
            mode: 'date',
            androidTheme: this.datePicker.ANDROID_THEMES.THEME_HOLO_DARK
        }).then(
            date => console.log('Got date: ', date),
            err => console.log('Error occurred while getting date: ', err)
        );
    }

}

我得到了以下错误:

代码语言:javascript
复制
core.js:15724 ERROR Error: Uncaught (in promise): Error: StaticInjectorError(AppModule)[SetupPage -> DatePicker]: 
  StaticInjectorError(Platform: core)[SetupPage -> DatePicker]: 
    NullInjectorError: No provider for DatePicker!
Error: StaticInjectorError(AppModule)[SetupPage -> DatePicker]: 
  StaticInjectorError(Platform: core)[SetupPage -> DatePicker]: 
    NullInjectorError: No provider for DatePicker!
    at NullInjector.push../node_modules/@angular/core/fesm5/core.js.NullInjector.get (core.js:8896)
    at resolveToken (core.js:9141)
    at tryResolveToken (core.js:9085)
    at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (core.js:8982)
    at resolveToken (core.js:9141)
    at tryResolveToken (core.js:9085)
    at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (core.js:8982)
    at resolveNgModuleDep (core.js:21218)
    at NgModuleRef_.push../node_modules/@angular/core/fesm5/core.js.NgModuleRef_.get (core.js:21907)
    at resolveNgModuleDep (core.js:21218)
    at resolvePromise (zone.js:831)
    at resolvePromise (zone.js:788)
    at zone.js:892
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:423)
    at Object.onInvokeTask (core.js:17290)
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:422)
    at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:195)
    at drainMicroTaskQueue (zone.js:601)

通常情况下,如果您没有导入模块,就会发生这种情况,但是在文档中没有要导入的模块?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-22 22:22:33

尝试在app.module.ts中添加以下内容:

代码语言:javascript
复制
import { DatePicker } from '@ionic-native/date-picker/ngx';

[...]

@NgModule({
...
providers: [
    ...,
    DatePicker
]
...
})

通常,所有的@ionic-native包都必须导入到app.module.ts的providers数组中,即使在ionic文档中没有提到。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57147726

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档