は私が(プライベートレポからNPM経由でインストールされている)私が書いたモジュールを持って次の構造その:活字体のエクスポート/インポート機能
email.ts、utils.ts、index.ts、(いくつかの他のファイル私は、以下の機能を持っている私のemail.tsオン)
:
export * from "./email";
export * from "./errors";
export * from "./logger";
export * from "./objectUtils";
export * from "./queryFilter";
export * from "./templateEngine";
export * from "./utils";
:
export default function sendEmail(toEmail: string, subject: string, content: string): any {
let helper = SendGrid.mail;
let from_email: any = new helper.Email(process.env.FROM_EMAIL);
let to_email: any = new helper.Email(toEmail);
let helperContent: any = new helper.Content("text/plain", content);
let mail: any = new helper.Mail(from_email, subject, to_email, helperContent)
var request = SendGrid.emptyRequest({
method: "POST",
path: "/v3/mail/send",
body: mail.toJSON()
});
//This performs the request with a promise
SendGrid.API(request).then((response: any) => {
//Deal with output as needed
console.log("email was sent!!");
}).catch((err: any) => {
//log.error(err);
});
}
その後、私のindex.tsに、私は次の宣言を持っています私はこのモジュールをインポートするアプリケーションで
私はのsendEmail機能を使用したい時はいつでも
import * as Utils from "my-utils";
は最後に、私はこの文を使用してそれを呼び出すように私はこれをインポートします。
Utils.sendEmail(email, subject, content);
しかし、これは常に"Cannot read property 'sendEmail' of undefined"
というエラーがスローされます。
どうしてですか?このような宣言をこのような方法でエクスポートするときに、私はこの型の宣言を使用できませんか? これはどのような解決策ですか?
よろしく
この '私-utils'は何ですか? –
@NitzanTomer私のNPMモジュールの名前です –
ノードのようなものがあなたのモジュールを見つけることができません。コンパイルされた出力を見てください。意味がありますか?あなたはそれをあなたの質問に含めることができますか? –