Javascript 如何通过“发送电子邮件”;smtpjs“;在reactjs中
我想在用户单击提交时通过表单发送电子邮件 为此,我使用了Javascript 如何通过“发送电子邮件”;smtpjs“;在reactjs中,javascript,reactjs,typescript,smtp,smtpjs,Javascript,Reactjs,Typescript,Smtp,Smtpjs,我想在用户单击提交时通过表单发送电子邮件 为此,我使用了smtpjs软件包,您可以在这里查看网站 在纯js中,我们必须在html头标记中添加这行代码 <script src= "https://smtpjs.com/v3/smtp.js"> </script> 我为谷歌启用了不太安全的应用程序,还关闭了两步验证,但这没有帮助,你的标签正在向全局窗口对象添加属性电子邮件,但TypeScript不知道这一点。您需要告诉TypeScript此属
smtpjs
软件包,您可以在这里查看网站
在纯js中,我们必须在html头标记中添加这行代码
<script src=
"https://smtpjs.com/v3/smtp.js">
</script>
我为谷歌启用了不太安全的应用程序,还关闭了两步验证,但这没有帮助,你的
标签正在向全局窗口对象添加属性电子邮件,但TypeScript不知道这一点。您需要告诉TypeScript此属性存在以及它是什么类型
由于这个包非常简单,我继续创建了一个类型声明文件。我遵循了手册中的指南和示例
设置好所有内容后,在访问window.Email
或window.Email.send()时,您将获得完整的TypeScript支持。如果要访问特定类型以将其用于变量,可以使用Email.EmailData
和Email.Attachement
您的
标记正在向全局窗口
对象添加属性电子邮件
,但TypeScript不知道这一点。您需要告诉TypeScript此属性存在以及它是什么类型
由于这个包非常简单,我继续创建了一个类型声明文件。我遵循了手册中的指南和示例
设置好所有内容后,在访问window.Email
或window.Email.send()时,您将获得完整的TypeScript支持。如果要访问特定类型以将其用于变量,可以使用Email.EmailData
和Email.Attachement
加载脚本时,它会创建一个全局对象电子邮件。您可以像下面的窗口那样访问React代码中的任何全局对象。但是如果我是你,我会尝试找出lib是否遵循任何js模块模式,使你能够像从“smtpjs”导入电子邮件一样导入它
您的项目是否使用了package.json
和webpack、babel等常见的生态系统?是的,我只是尝试了窗口。电子邮件看起来没有正确下载lin来创建全局对象,因为它向我显示此错误属性“Email”在type window和type of globalThis
上不存在。有什么建议吗?这是运行时异常还是只是typescript不知道窗口。电子邮件
?你可以声明它存在于窗口中。我认为类型脚本无法识别它,因为当我编写窗口并向其添加一个点时,它不建议使用电子邮件单词。我该怎么做?加载脚本时,它会创建一个全局对象电子邮件
。您可以像下面的窗口那样访问React代码中的任何全局对象。但是如果我是你,我会尝试找出lib是否遵循任何js模块模式,使你能够像从“smtpjs”导入电子邮件一样导入它
您的项目是否使用了package.json
和webpack、babel等常见的生态系统?是的,我只是尝试了窗口。电子邮件看起来没有正确下载lin来创建全局对象,因为它向我显示此错误属性“Email”在type window和type of globalThis
上不存在。有什么建议吗?这是运行时异常还是只是typescript不知道窗口。电子邮件
?你可以声明它存在于窗口中。我认为类型脚本无法识别它,因为当我编写窗口并向其添加一个点时,它不建议使用电子邮件单词。我该怎么做?当我为部署运行命令npm install
然后npm build
时,它也不能识别Email
。我不知道身份验证问题。当我为部署运行命令npm install
然后npm build
时,它也不能识别Email
。我没有关于身份验证问题的想法。
The SMTP server requires a secure connection or the client was not
authenticated. The server response was: 5.7.0 Authentication Required. Learn
more at - Fix: Try a different SMTP server :
https://elasticemail.com/account#/create-account?r=20b444a2-b3af-4eb8-bae7-
911f6097521c
// Type definitions for SmtpJs
// Project: https://smtpjs.com/
// Definitions by: Linda Paiste https://github.com/lindapaiste
// SmtpJS exposes a variable `Email` on the global `window` object
declare namespace Email {
type Attachment =
| {
name: string;
path: string;
}
| {
name: string;
data: string; // base64 format
};
interface EmailData {
SecureToken: string;
To: string | string[];
From: string;
Subject: string;
Body: string;
Attachments?: Attachment[];
}
function send(email: EmailData): Promise<string>;
}
"compilerOptions": {
...
"typeRoots": [
"./node_modules/@types/",
"./src/types"
]
}