Является ли общепринятым условием использование функции pixels to rem для всех значений размера в React (со стилевыми компонентами)? - PullRequest
1 голос
/ 07 ноября 2019

Мы унаследовали некоторые реактивные проекты, которые используют стилизованные компоненты.

Все в основном «нормальное», как иллюстрируют документы по реакции / стилю, но везде, где мы указываем размеры в стилевых компонентах (шрифты, поля и т. Д.), Есть функция с именем pxToRem, используемая так:

font-size: pxToRem(16)
width : pxToRem(400)

У меня сложилось впечатление, что использование этого везде довольно шатко, и что для шрифтов мы можем просто использовать общеизвестное отображение (например, 14px = .875rem) и указать это значение rem (при условии, что сброс css равентам). Для ширины контейнера мы можем либо использовать пиксели для контейнеров, которые не должны изменять размер, либо использовать отступы / поля, чтобы позволить контейнерам расти в соответствии с их шрифтом.

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

Просто ищу разрешение общности этого шаблона и отзывы о нормальном уровне использования такой утилиты.

1 Ответ

1 голос
/ 10 ноября 2019

Соглашения не разрабатываются, если вы не применяете их в своем проекте.

Если вы загляните в документацию styled-Components , они используют комбинацию px, rem и em, нонет функции pxToRem.

Кажется, разработчик, который написал, что старый проект привык работать с пикселем. Затем появилось требование: «База пользователей использует разные устройства с разной плотностью пикселей». Легко исправить: функция pxToRem «решает» это требование.

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

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

Используйте соглашение, которое вы использовали в своих прошлых проектах.

XOR

Используйте соглашение из документации по стилевым компонентам.

...