Регламентировать 'кавычки' в PUG файлах
На данный момент имеется несколько разногласных issues для нескольких людей, где в одном issue указано, что все кавычки в pug файлах необходимо заменить на двойные, а в issue другого человека, другой ревьювер написал о необходимости использовать двойные кавычки в pug HTML атрибутах, а в местах где используется js код - одинарные. Нужно регламентировать данный момент в best practices, во избежание спорных моментов, и желательно использовать второй вариант, где:
- const anyWord = "word"; // Плохо, т.к это уже js код, хоть и внутри PUG файла,
// у него должны быть одинарные кавычки
button(type="button")= anyWord // type="button" - HTML атрибут,
// он должен быть в двойных кавычках
- const anyWord = 'word'; // Хорошо
button(type="button")= anyWord
Может нам тут не упоминать вообще про Pug, а сказать, что если кусок на одном языке встроен в другой, то для каждого остаются свои правила и стандарты? То есть если JS внутри HTML, то там все равно остаются стандарты для JS-а и пример можно про инлайновый код для click у кнопки прямо в html-теге, например. И подписать отдельно, что это распространяется на все подобные моменты, в том числе на JS в Pug, CSS в HTML и тд
Может нам тут не упоминать вообще про Pug, а сказать, что если кусок на одном языке встроен в другой, то для каждого остаются свои правила и стандарты? То есть если JS внутри HTML, то там все равно остаются стандарты для JS-а и пример можно про инлайновый код для click у кнопки прямо в html-теге, например. И подписать отдельно, что это распространяется на все подобные моменты, в том числе на JS в Pug, CSS в HTML и тд
Согласен. Это предложение было бы наиболее корректным.)
@Znack,
Может нам тут не упоминать вообще про Pug, а сказать, что если кусок на одном языке встроен в другой, то для каждого остаются свои правила и стандарты? То есть если JS внутри HTML, то там все равно остаются стандарты для JS-а и пример можно про инлайновый код для click у кнопки прямо в html-теге, например. И подписать отдельно, что это распространяется на все подобные моменты, в том числе на JS в Pug, CSS в HTML и тд
Под js кодом в pug что ты подразумеваешь ?
- (явный js) в теге script или инлайн обработчике событий;
- код следующий после символа дефис -;
- просто логический код который не имеется в HTML. К примеру дефолтные параметры в pug миксинах или выражение в атрибуте
class=isEnable && 'className';
На текущий момент я придерживался варианта когда во всех трех случаях ставил одинарные кавычки, только для установки литерального значения в атрибут использовал двойные кавычки class="className" получалось как в AirBnb React.
Ну первые два точно, третий уже под сомнением, но объяснить его не могу, поэтому тут не топлю ни за что :) Давайте вместе решим, как удобней просто
Все в pug по сути является js кодом, и неважно какие мы кавычки поставим он скомпилируется в HTML с двойными кавычками, поэтому чтобы не создавать путаницы в виде того что в одном месте нужно ставить одинарные в другом уже двойные, может везде в pug использовать одинарные?
Может нам тут не упоминать вообще про Pug, а сказать, что если кусок на одном языке встроен в другой, то для каждого остаются свои правила и стандарты? То есть если JS внутри HTML, то там все равно остаются стандарты для JS-а и пример можно про инлайновый код для click у кнопки прямо в html-теге, например. И подписать отдельно, что это распространяется на все подобные моменты, в том числе на JS в Pug, CSS в HTML и тд
Я полностью согласен с этим предложением. Мне кажется, что это самый логичный и правильный способ - придерживаться стандартов для каждого конкретного инструмента, даже когда инструменты используются вместе.
Я думаю, стоит использовать двойные только для html-атрибутов, в остальном случае одинарные.
Тогда можем создавать PR :)