MeteorJSアプリケーションからメールを送信する必要があります。"html-in-js"ではなく、htmlテンプレートを使用してメールを生成したいと考えています。
私が試したこと:
1)Template.emailTemplate(data)
を使用しますが、Template
はサーバー側では定義されていません。
2)*.html
のファイルを<app>/server/email/templates
ディレクトリに保存し、その内容をfs.readSync()
で取得し、流星の内蔵handlebars
パッケージを使用してコンパイル/レンダリングします。
*.html
server
ディレクトリのファイルがバンドルされていないため、これは開発環境では問題なく動作しますが、バンドルされたアプリケーションを使用した製品では失敗します。また、バンドル処理中にディレクトリの構造が変更され、テンプレートへの相対パスが無効になります。
3)あなたの提案は? =)MeteorJS:テンプレートから電子メールを生成するサーバー側
9
A
答えて
14
現在、テンプレートはサーバー側ではサポートされていません。その機能が実現しています。その間、ハンドルバーを使用してサーバ上でHandbarsを使用できる便利なパッケージが作成されました。雰囲気のあるパッケージを使用するか、プロジェクトディレクトリをパッケージフォルダにコピーします。次に例を示します。
例:
私-email.handlebars
Hello, {{name}}
server.js
Email.send({
html: Handlebars.templates['my-email']({ name: 'Chris' })
});
注
ハンドルバーファイルにテンプレートがありません。 htmlとHandlebarsの式を入れてください。ファイルは関数にコンパイルされ、Handlebars.templatesオブジェクトのプロパティに割り当てられます。プロパティ名は、ファイル名からハンドルバー拡張子を引いたものになります。
Githubの
4
別のオプションは、今のうちのリソースを読んで、あなたのアプリケーションが使用するリソースを保存するためにそれらを使用するようにサーバー側のプライベート 'ディレクトリを使用することです。
流星プロジェクトを作成してから、/ privateディレクトリを作成します。テンプレートでそこに
置き、テンプレートを(あなたがハンドルを必要とする場合は、代わりに流星-ハンドル-serverパッケージを使用する必要があります)
読む:
Assets.getText(assetPath, [asyncCallback]);
もちろん、あなたはまた、パターンマッチングを行うことができますregex /読み込まれた文字列に対して置き換えます。
例:資産の機能の詳細については
var template = Assets.getText(assetPath); // Synchronous
var username = 'John Doe';
template = template.replace('{{username}}', username);
Email.send({
html: template
});
1
流星0.8 *は、ここにもう一つの解決策です。
関連する問題
- 1. サーバー側電子メールスクリプト
- 2. erbでプレーンテキストの電子メールを生成
- 3. 電子メールのためのビューからPDFを生成
- 4. thunderbirdからSQLサーバーに電子メールをエクスポートする
- 5. 専用サーバーから電子メールを送る最良の方法
- 6. Mscrm Dynamics SOAPテンプレートから電子メールを送信
- 7. MVCクライアント側電子メールの検証
- 8. クライアント側の電子メールの検証
- 9. Tracの電子メール通知テンプレート言語
- 10. 電子メールからデータを抽出するテンプレートを逆にする - PHP
- 11. 電子メール本文を電子メールから抽出する - テキスト解析用
- 12. Biztalk(POP3なし)のExchangeサーバーからの電子メールを受信
- 13. SMTPサーバーからPHPを使用した電子メールの送信
- 14. 電子メールからログアウトするには?
- 15. テンプレートのmeteorjsキーアップイベント
- 16. twitterの電子メールを作成する
- 17. 電子メールを作成する "To:"ユーザーコントロール?
- 18. AngularJS Http Request電子メール付きSailsJSサーバーからの返信
- 19. 電子メール、カレンダー、連絡先のサーバー
- 20. ブックマークをサーバー側から生成するAsp.netとc#
- 21. ifステートメントが私の生成した電子メールを壊す
- 22. サーバー側からメニューを作成する
- 23. ApacheサーバーからPHPスクリプトで電子メールを送信する方法
- 24. smtpサーバーなしでSharePointから電子メールを送信するテスト
- 25. Pylonsから電子メールを送信
- 26. htmlソースから電子メールを取得
- 27. PHPからhtml電子メールを送信
- 28. C++コードから電子メールを送信
- 29. コアデータから電子メールを送信
- 30. Androidアプリケーションから電子メールを送信
ありがとうございます!これはまさに私が必要としていたものです! – th0r
それはHTMLに依存しませんか?つまり、プレーンテキストテンプレートとしても使用できますか?ありがとう! – hsribei