npm i --save nativescript-email
- 版本: 1.6.0
- GitHub: https://github.com/EddyVerbruggen/nativescript-email
- NPM: https://npmjs.net.cn/package/nativescript-email
- 下载
- 前一天: 7
- 上周: 33
- 上个月: 169
NativeScript Email
您可以使用此插件来编写电子邮件、手动编辑用户草稿并发送。
请注意,此插件依赖于默认的邮件应用程序。如果您想回退到第三方客户端应用程序(如 Gmail 或 Outlook),请检查是否可用。如果不可用,请使用类似 Social Share 插件 的解决方案。
安装
从您项目的根目录运行此命令
tns plugin add nativescript-email
API
要使用此插件,您必须首先 require/import 它
TypeScript
import * as email from "nativescript-email";
// or
import { compose } from "nativescript-email";
// or even
import { compose as composeEmail } from "nativescript-email";
JavaScript
var email = require("nativescript-email");
可用
TypeScript
email.available().then((avail: boolean) => {
console.log("Email available? " + avail);
})
JavaScript
email.available().then(function(avail) {
console.log("Email available? " + avail);
})
编写
JavaScript
// let's first create a File object using the tns file module
var fs = require("file-system");
var appPath = fs.knownFolders.currentApp().path;
var logoPath = appPath + "/res/telerik-logo.png";
email.compose({
subject: "Yo",
body: "Hello <strong>dude</strong> :)",
to: ['[email protected]', '[email protected]'],
cc: ['[email protected]'],
bcc: ['[email protected]', '[email protected]'],
attachments: [
{
fileName: 'arrow1.png',
path: 'base64://iVBORw0KGgoAAAANSUhEUgAAABYAAAAoCAYAAAD6xArmAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAHGlET1QAAAACAAAAAAAAABQAAAAoAAAAFAAAABQAAAB5EsHiAAAAAEVJREFUSA1iYKAimDhxYjwIU9FIBgaQgZMmTfoPwlOmTJGniuHIhlLNxaOGwiNqNEypkwlGk9RokoIUfaM5ijo5Clh9AAAAAP//ksWFvgAAAEFJREFUY5g4cWL8pEmT/oMwiM1ATTBqONbQHA2W0WDBGgJYBUdTy2iwYA0BrILDI7VMmTJFHqv3yBUEBQsIg/QDAJNpcv6v+k1ZAAAAAElFTkSuQmCC',
mimeType: 'image/png'
},
{
fileName: 'telerik-logo.png',
path: logoPath,
mimeType: 'image/png'
}]
}).then(
function() {
console.log("Email composer closed");
}, function(err) {
console.log("Error: " + err);
});
根据上述示例,自 1.3.0 版起已添加对完整附件的支持。
从 1.4.0 版本开始,如果找不到文件,则 promise 将被拒绝。
与 Angular 一起使用
查看 此教程 (YouTube),了解如何在 NativeScript-Angular 应用中使用此插件。
已知问题
由于 iOS 限制,您无法使用 iOS 模拟器测试此插件。为了避免崩溃,当在 iOS 模拟器上调用 available
时,此插件返回 false
。