我必须将数据从模板传递到电子邮件正文。有可能还是我该如何解决?
我有此列表
<ion-list>
<ion-item>
<ion-row>
<ion-col size="3">
<label>MARCA</label>
</ion-col>
<ion-col size="4">
<label>PRODUCTO</label>
</ion-col>
<ion-col size="3">
<label>PRESENT.</label>
</ion-col>
<ion-col size="2">
<label>CANT.</label>
</ion-col>
</ion-row>
</ion-item>
<ion-item *ngFor="let producto of productos">
<ion-row>
<ion-col size="3">
<label>{{ producto.marca }}</label>
</ion-col>
<ion-col size="4">
<label>{{ producto.producto }}</label>
</ion-col>
<ion-col size="3">
<label>{{ producto.presentacion }}</label>
</ion-col>
<ion-col size="2">
<label{{ producto.cantidad }}</label>
</ion-col>
</ion-row>
</ion-item>
</ion-list>
我想将此表传递给电子邮件正文,我正在使用社交共享插件发送电子邮件:
this.socialSharing.canShareViaEmail().then(() => {
this.socialSharing.shareViaEmail(
'HERE COMES THE BODY AND I WANT TO PUT HERE THE ion-list',
'Subject',
['example@hotmail.com']).then(() => {
// Success!
});
});
This is the plugin example!
this.socialSharing.shareViaEmail('Body', 'Subject', ['recipient@example.org']).then(() => {
// Success!
})
答案 0 :(得分:1)
因此,我认为这不像将转换后的离子组分表输出到电子邮件友好的html模板中那么简单。但是您肯定可以创建一个帮助脚本来帮助您完成此任务。
如果您事先了解电子邮件的结构,则很容易创建一个简单的脚本,该脚本将遍历您的邮件并将其填充到所需的电子邮件模板中。
我不会编写所有代码,但以下是我过去所做的事情的简要说明:
createHtmlTableRow = (producto) => `
<tr>
<td size="3">
<label>${producto.marca}</label>
</td>
<td size="4">
<label>${producto.producto}</label>
</td>
<td size="3">
<label>${producto.presentacion}</label>
</td>
<td size="2">
<label>${producto.cantidad}</label>
</td>
</tr>`;
createHtmlTemplate = (products) => {
let emailTemplate: string = `<table>
<thead>
<tr>
<th>
<label>MARCA</label>
</th>
<th>
<label>PRODUCTO</label>
</th>
<th>
<label>PRESENT.</label>
</th>
<th>
<label>CANT.</label>
</th>
</tr>
</thead>
<tbody>`;
for (let product of products) {
emailTemplate += this.createHtmlTableRow(product);
}
emailTemplate += '</tbody></table>';
return emailTemplate;
}
...
this.socialSharing.canShareViaEmail().then(() => {
this.socialSharing.shareViaEmail(this.createHtmlTemplate(producto), 'Subject', ['example@hotmail.com']).then(() => {
// Success!
});
});