【发布时间】:2019-10-28 09:56:07
【问题描述】:
当前行为: 我已根据 ionic 文档安装了电子邮件编写器组件,并且 isAvailable 功能不可用。我已阅读有关此主题的各种文档,但找不到任何方法使该方法起作用。
该插件的其余部分在我的 Android 设备上发送电子邮件时可以完美运行,因此该插件肯定已安装并可以正常工作。
Error: Uncaught (in promise): TypeError: EmailComposer.getPlugin(...).isAvailable is not a function
预期行为: 我希望 isAvailable 方法返回 true 或 false。
重现步骤:
- $ ionic start myApp 空白
- $ ionic cordova plugin add cordova-plugin-email-composer
- $ npm install @ionic-native/email-composer
相关代码:
import { Component } from '@angular/core';
import { EmailComposer } from '@ionic-native/email-composer/ngx';
@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss']
})
export class HomePage {
constructor(private emailComposer: EmailComposer) {}
public canEmail: boolean = false;
ionViewDidEnter() {
this.emailComposer.isAvailable().then((available: boolean) => {
if (available) {
this.canEmail = true;
}
});
}
}
其他信息:
Ionic:
Ionic CLI : 5.4.2 (C:\Users\andy\AppData\Roaming\npm\node_modules\ionic)
Ionic Framework : @ionic/angular 4.11.3
@angular-devkit/build-angular : 0.801.3
@angular-devkit/schematics : 8.1.3
@angular/cli : 8.1.3
@ionic/angular-toolkit : 2.0.0
Cordova:
Cordova CLI : 9.0.0 (cordova-lib@9.0.1)
Cordova Platforms : android 8.1.0
Cordova Plugins : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.1.3, (and 5 other plugins)
Utility:
cordova-res : not installed
native-run : 0.2.8
System:
Android SDK Tools : 26.1.1 (c:\Android\Sdk)
NodeJS : v10.15.2 (C:\Program Files\nodejs\node.exe)
npm : 6.4.1
OS : Windows 10
【问题讨论】:
-
好像没有安装插件。你添加了插件吗,
cordova plugin add cordova-plugin-email-composer -
是的,我做到了,我按照 Ionic 网站上的说明进行操作,并且该模块已安装到
node_modules文件夹中,如果我绕过对 isAvailable 的调用,则发送电子邮件 GMail 表单将启动为会期待。 -
不幸的是,
@ionic-native/email-composer模块不支持这些功能:/
标签: cordova ionic-framework ionic4