fullstack-development / front-end-best-practices

Set of best practices that you can use as checklist for your project.
328 stars 79 forks source link

Регламентировать 'кавычки' в PUG файлах #48

Open Ilanevazno opened 4 years ago

Ilanevazno commented 4 years ago

На данный момент имеется несколько разногласных 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         
Znack commented 4 years ago

Может нам тут не упоминать вообще про Pug, а сказать, что если кусок на одном языке встроен в другой, то для каждого остаются свои правила и стандарты? То есть если JS внутри HTML, то там все равно остаются стандарты для JS-а и пример можно про инлайновый код для click у кнопки прямо в html-теге, например. И подписать отдельно, что это распространяется на все подобные моменты, в том числе на JS в Pug, CSS в HTML и тд

Ilanevazno commented 4 years ago

Может нам тут не упоминать вообще про Pug, а сказать, что если кусок на одном языке встроен в другой, то для каждого остаются свои правила и стандарты? То есть если JS внутри HTML, то там все равно остаются стандарты для JS-а и пример можно про инлайновый код для click у кнопки прямо в html-теге, например. И подписать отдельно, что это распространяется на все подобные моменты, в том числе на JS в Pug, CSS в HTML и тд

Согласен. Это предложение было бы наиболее корректным.)

AkhmadBabaev commented 3 years ago

@Znack,

Может нам тут не упоминать вообще про Pug, а сказать, что если кусок на одном языке встроен в другой, то для каждого остаются свои правила и стандарты? То есть если JS внутри HTML, то там все равно остаются стандарты для JS-а и пример можно про инлайновый код для click у кнопки прямо в html-теге, например. И подписать отдельно, что это распространяется на все подобные моменты, в том числе на JS в Pug, CSS в HTML и тд

Под js кодом в pug что ты подразумеваешь ?

На текущий момент я придерживался варианта когда во всех трех случаях ставил одинарные кавычки, только для установки литерального значения в атрибут использовал двойные кавычки class="className" получалось как в AirBnb React.

Znack commented 3 years ago

Ну первые два точно, третий уже под сомнением, но объяснить его не могу, поэтому тут не топлю ни за что :) Давайте вместе решим, как удобней просто

osyka-yuri commented 3 years ago

Все в pug по сути является js кодом, и неважно какие мы кавычки поставим он скомпилируется в HTML с двойными кавычками, поэтому чтобы не создавать путаницы в виде того что в одном месте нужно ставить одинарные в другом уже двойные, может везде в pug использовать одинарные?

alagunoff commented 3 years ago

Может нам тут не упоминать вообще про Pug, а сказать, что если кусок на одном языке встроен в другой, то для каждого остаются свои правила и стандарты? То есть если JS внутри HTML, то там все равно остаются стандарты для JS-а и пример можно про инлайновый код для click у кнопки прямо в html-теге, например. И подписать отдельно, что это распространяется на все подобные моменты, в том числе на JS в Pug, CSS в HTML и тд

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

sodiqit commented 3 years ago

Я думаю, стоит использовать двойные только для html-атрибутов, в остальном случае одинарные.

Znack commented 3 years ago

Тогда можем создавать PR :)