[英]Node js + template replace content
我正在努力為員工生成錄取通知書。 所以我有一些默認模板 index.html:
索引.html
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div id="header">
<h1>Offer Letter</h1>
</div>
<div id="name">
Hello [[Name]],
Welcome to our organization,'
Details:
[[Date]] : Offer Letter Date
[[Name]] : Employee Name
[[Designation]] : Designation
[[Address]] : Communication Address
[[CTC]] : Cost to the Company
</div>
<div id="footer">
Copyright
</div>
</body>
</html>
我一次生成多個報價超過 300。
所以我有這樣的json數據:
var obj = [
{ "name" : "Abc",
"Date" : "12-12-2014",
"Designation" : "Admin",
"Address" : "XXXX",
"CTC" : 3333},
{ "name" : "wefrwe",
"Date" : "12-12-2014",
"Designation" : "Admin",
"Address" : "XXXX",
"CTC" : 55},
{ "name" : "dssd",
"Date" : "12-12-2015",
"Designation" : "Admin",
"Address" : "XXXX",
"CTC" : 333},
{ "name" : "gfsc",
"Date" : "12-1-2014",
"Designation" : "Admin",
"Address" : "XXXX",
"CTC" : 22},
{ "name" : "dssdds",
"Date" : "1-12-2014",
"Designation" : "Admin",
"Address" : "XXXX",
"CTC" : 4334}
];
我如何替換值(例如 [[Name]] 到 Abc )。
有任何節點包嗎?
我嘗試了以下代碼,但不知道這是最好的方法和有用的。
for(i in obj) {
var textbody = '<!DOCTYPE html> <html> <head> </head> <body> <div id="header"> <h1>Offer Letter</h1> </div> <div id="name"> Hello [[name]], Welcome to our organization,' Details: [[Date]] : Offer Letter Date [[Name]] : Employee Name [[Designation]] : Designation [[Address]] : Communication Address [[CTC]] : Cost to the Company </div> <div id="footer"> Copyright </div> </body> </html>';
textbody = textbody.replace(/{[^{{}}]+}/g, function(key){
return obj[key.replace(/[{{}}]+/g, "")] || "";
});
}
有關使用節點、節點郵件程序和玉石發送電子郵件的信息,請參閱此處
您的玉石模板應該類似於(或優於):
doctype html
html
head
body
p
| Hello #{newemp.name},
br
br
| Welcome to our organization.
br
br
| Details:
br
| #{newemp.Date} : Offer Letter Date
br
| #{newemp.name} : Employee Name
br
| #{newemp.Designation} : Designation
br
| #{newemp.Address} : Communication Address
br
| #{newemp.CTC} : Cost to the Company
和
在引用的鏈接中,您需要傳遞如下上下文:
var context = {
"name" : "Abc",
"Date" : "12-12-2014",
"Designation" : "Admin",
"Address" : "XXXX",
"CTC" : 3333
};
為簡單起見,我確實使用一個員工對象對上下文變量進行了硬編碼,您需要為每封電子郵件動態傳遞每個員工對象。
mustache.js是 JavaScript 中 mustache 模板系統的零依賴實現。
Mustache是一種無邏輯的模板語法。 它可以用於 HTML、配置文件、源代碼 - 任何東西。 它的工作原理是使用散列或對象中提供的值擴展模板中的標簽。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.