Является ли хорошей практикой завершать самозакрывающиеся теги coldfusion символом "/>"? - PullRequest
7 голосов
/ 25 сентября 2011

В HTML меня всегда учили закрывать себя с помощью "/>". Например, "<br />", "<input type='button' value='myButton' />" и т. Д.

В Coldfusion, тем не менее, кажется стандартным просто никогда не закрывать эти теги. Я постоянно вижу код вроде:

<cfset myVariable = someValue>
<cfset myOtherVariable = someOtherValue>

и т.д.

Это плохой код или он общепринятый? Я видел это почти везде, где я видел код Coldfusion. Есть ли польза от закрытия этих тегов, или можно оставить все как есть?

Ответы [ 3 ]

11 голосов
/ 25 сентября 2011

Поскольку не существует официального стандарта кодирования для CFML, решать, стоит ли их использовать.То же, что и использование прописных / строчных тегов.

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

Но есть, по крайней мере, одно техническое отличие: пользовательские теги.Позвольте мне показать это на примере.

Рассмотрим следующий пользовательский тег:

<cfif thisTag.ExecutionMode EQ "start">
    started<br/>
</cfif>

running<br/>

<cfif thisTag.ExecutionMode EQ "end">
    ended<br/>
</cfif>

Теперь эти два типа вызова:

<p>&lt;cf_demo&gt;</p>

<cf_demo>

<p>&lt;cf_demo /&gt;</p>

<cf_demo />

И вот вывод:

<cf_demo>
started
running

<cf_demo />
started
running
running
ended

Второй синтаксис эквивалентен <cf_demo></cf_demo>.

Возможно, есть и другие различия, но я не могу вспомнить ни одного в данный момент ...:)

0 голосов
/ 26 ноября 2014

Я согласен с последним комментарием.

Я ненавижу эти закрывающие теги.

Это бессмысленно и не является стандартом кодирования для CFML.

Он начал появляться, когда xml стал популярным из-за строгого синтаксиса тегов и людей, считающих его правильным для CFML. CFML не является HTML. Относиться к нему как таковому - само по себе ленивое кодирование. Я также думаю, что это выглядит более красиво без ненужного закрытия /> :) но это я для тебя.

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

0 голосов
/ 25 сентября 2011

Неважно, это также не нужно в html, если это не xhtml.

...