LocalNotification - 如何使用它?

Posted

技术标签:

【中文标题】LocalNotification - 如何使用它?【英文标题】:LocalNotification - How to use it? 【发布时间】:2019-06-10 10:26:22 【问题描述】:

我需要在 Ionic(使用 Angular)应用程序上提供推送通知,我尝试安装 LocalNotification 但我无法实现这一点,并且没有关于如何安装它的“教程”。

这是 LocalNotifications 的 git:https://github.com/katzer/cordova-plugin-local-notifications

我用 npm 安装它,然后我尝试这样使用它:

export class PushService 

  constructor(private localNotifications: LocalNotifications) 

  public testNotif() 
    // Schedule delayed notification
    this.localNotifications.schedule(
      text: 'Delayed ILocalNotification',
      led: 'FF0000',
      sound: null
    );
  

但我总是有这个错误:NullInjectorError: No provider for LocalNotifications!

问题是,当我在 app.module 中添加 LocalNotifications 作为提供程序时,我遇到了一个新错误:

Type 'LocalNotificationsOriginal' is not assignable to type 'Provider'.

怎么了?怎么用?

【问题讨论】:

我也遇到了同样的问题,请问您最后解决了吗? 【参考方案1】:

以防万一有人遇到同样的问题。来自文档

要使用插件,请导入插件提供程序并将其添加到您的@NgModule, 然后将其注入您希望使用它的地方。确保导入 /ngx 目录中的可注入类,如下所示 例子:

// app.module.ts
import  Camera  from '@ionic-native/camera/ngx';

...

@NgModule(
  ...

  providers: [
    ...
    Camera
    ...
  ]
  ...
)
export class AppModule  

这里的关键点,它添加到 app.module.ts 中的提供程序,而不是您可能想要使用它的其他模块。在组件中,只需照常注入构造函数()

已尝试使用 localNotifications 进行此操作。

【讨论】:

我认为这里的关键是确保您从/ngx 目录导入。使用 WebStorm IDE,它会忽略该目录并从不是提供者的 @ionic-native/local-notifications 导入。

以上是关于LocalNotification - 如何使用它?的主要内容,如果未能解决你的问题,请参考以下文章

如何设置每两分钟重复一次LocalNotification?

在 IST 下午 5 点准确触发 localNotification

如何使用phonegap localnotification插件清除通知栏上的项目

如何检测按下localNotification关闭按钮

从 NSData 为 localNotification 设置自定义声音

localNotification 触发时如何在后台应用程序中增加 applicationIconBadgeNumber?