После того, как Gmail разбил мои транзакционные электронные письма на блоки и скрыл повторяющиеся части, я реализовал вспомогательную функцию, вдохновленную ответом SeanO, в своем пакете meanie-mail-composer для автоматизации добавления случайные строки для меня.
Этот помощник содержит скрытую <span>
со случайной строкой из 5 символов перед каждым тегом </p>
по умолчанию.
Вот фрагмент кода, который добивается цели (Node.js):
const crypto = require('crypto');
//Helper to randomize HTML contents
function randomize(html, tag = '</p>') {
//Create a 5 char random string for email content to be unique
const time = String(Date.now());
const hash = crypto
.createHash('md5')
.update(time)
.digest('hex')
.substr(0, 5);
//Create HTML string to replace with and regex
const str = `<span style="display: none !important;">${hash}</span>${tag}`;
const regex = new RegExp(tag, 'g');
//Replace in HTML
return html.replace(regex, str);
}
Больше нет разбитых писем!