Voici mon exemple de code en HTML Je dois imprimer les données avec le format de tableau approprié
id name age gender 1 abc 10 M 2 def 20 M
Sortie attendue dans l'e-mail
redshiftClient.query('SELECT top 10 * FROM table')
.then(function (data) {
console.log(data);
var mail = {
from: '******@outlook.com',
to: '******@test.co.in',
subject: "Send Email Using Node.js",
text: "Node.js New world for me",
html: ""
}
p >
3 Réponses :
vous pouvez avoir divers packages npm, par exemple console.table . Vérifiez ceci
const cTable = require('console.table');
const table = cTable.getTable([
{
name: 'foo',
age: 10
}, {
name: 'bar',
age: 20
}
]);
console.log(table);
vous devez installer le package console.table npm install console.table --save
pour peu de données ok si j'ai plus de 20 données
dans ce cas, il vaut mieux créer csv / excel à partir de json et qui peut être joint avec le mail
Vous avez besoin d'un pack qui peut convertir un tableau d'objets en html. quelque chose comme https://www.npmjs.com/package/node-json2html peut faire l'affaire. Fondamentalement, passez les données à la fonction de transformation et cela vous donnera le code HTML approprié qui peut être envoyé par courrier électronique. L'e-mail sera rendu comme un tableau approprié. J'espère que cela vous aidera.
J'utilise quelque chose comme ça, mais je n'obtiens que le dernier enregistrement.
Pouvez-vous me montrer les données qui entrent dans 'data' (console.log (data))
Row: [Anonymous {ID: 3, Nom: 'C', Salaire: 50}, Anonyme {ID: 1, Nom: 'K', Salaire: 100}, Anonyme {ID: 6, Nom: 'E', Salaire : 90}, anonymous {id: 4, nom: 'd', salaire: 90}, anonyme {id: 2, nom: 'B', salaire: 10}, anonyme {id: 5, nom: 'e', Salaire: 1000}]
Avez-vous envisagé d'utiliser un moteur de visualisation? Cela rendrait les choses beaucoup plus faciles, je crois. colorlib.com/wp/top-templating-engines-for-javascript a>
Créez un tableau html à partir de vos données, puis placez le tableau dans le contenu de votre e-mail.