6 советов по оптимизации кода для создания шаблонов электронной почты

6 советов по оптимизации кода для создания шаблонов электронной почты

28 декабря 2022 г.

Сегодня я хочу поговорить о коде, который мы сейчас пишем для нашего проекта LLazyEmail.

Чтобы получить более подробную информацию, вы можете прочитать мои предыдущие статьи на эту тему.

* О шаблонах * Зачем запускать рассылку * Коммерческие письма запутаны, часть первая

Поскольку я хочу улучшить наш генератор шаблонов электронной почты, мы начали работу над третьим шаблоном электронной почты, который мы включим в нашем генераторе.

Одна из наших целей — оптимизация кода, улучшения и охват различных пограничных случаев.

Создание нового шаблона было интересным опытом. В основном мы его завершили.

Готово около 95%, мне просто лень доделывать. Переход к созданию функций вместо полировки строк HTML.

<цитата>

Вот почему этот проект имеет ценность, потому что код для электронной почты уродлив и легко ломается.

Итак, при создании третьего шаблона и помощи со стороны я выяснил, что можно улучшить в будущих итерациях.

1. У других людей могут быть другие уровни навыков и знаний в области кодирования

Всегда забывайте об этом :)

Даже с простым шаблоном у нас могут возникнуть проблемы. Так что мое предположение было неверным.

Результат: я потрачу больше времени и создам подробные инструкции с пошаговыми инструкциями. Возможно, опубликую здесь статью и об этом.

2. Отчет об ошибках

Наш шаблон содержит много слоев. Иерархия странная (по-прежнему), поэтому наличие проверки и хороших отчетов об ошибках имеет решающее значение для отладки кода и экономии времени.

xxx

3. Нам нужно начать повторно использовать наш код.

Я хочу создать шаблон GitHub с пустыми папками, файлами, конфигурацией и т. д.

4. Я хочу попробовать некоторые модули с открытым исходным кодом, которые делают то же самое.

Звучит проще, чем есть на самом деле. Я попытался установить несколько модулей npm, но наша текущая установка с Rollup, Babel и Jest дает сбой по каким-то странным причинам.

Результат: я пытаюсь разделить наш код на несколько частей и решить эту проблему отдельно. будет песочница для игры с новыми функциями. А позже это будет подмодуль, который будет делать только одну вещь и может быть встроен в текущий проект.

5. Я хочу организовать тесты Jest и команды, вызывающие их по-разному.

Я уже начал исследовать этот путь. Теперь для каждой большой части, которая у меня есть, я использую отдельный файл и добавляю номер в качестве префикса.

Это помогает мне поддерживать правильный порядок в папке «тесты».

И наш файл package.json > раздел сценариев начинает выглядеть уродливым и неуправляемым. Я решил проверить, как хаски упорядочивает свои скрипты, и перенес некоторые команды в скрипты bash.

Автоматизация!

Основная цель – сократить время преобразования следующего шаблона в части, совместимые с нашим генератором. И иметь возможность перенести нашу логику в компоненты React в будущем.

6. Сложные блоки требуют большего внимания и лучшей оценки перед началом кодирования.

Поскольку наш генератор имеет некоторые правила, логика шаблона должна им подчиняться. Текущее решение не является идеальным. Но это работает. И как заметил, создал задачу, чтобы потом попробовать разные варианты.

Приведу пример.

Вызов БД или API возвращает сложный объект, который мне нужно отобразить внутри нашего шаблона.

Как я должен передать его в наш шаблон?

Должен ли я создать несколько слоев для отображения: раздел > ряд > блок > элемент?

или лучше просто создать кусок этого шаблона, он же скелет, и поместить все в один файл?

Кроме того, важно отметить, что иногда люди заполняют эти данные вручную. Например, создание контента в Google Docs или Notion и его экспорт. Нам также необходимо обрабатывать эти случаи.

Но мне все еще нужно вернуться к нашим ошибкам.

Если вам интересно узнать подробности -> поделитесь этой статьей, оставьте комментарий или просто пометьте наш главный репозиторий на GitHub, чтобы нас заметили больше разработчиков .


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE