Начиная с CF11, все теги cf*
поддерживаются в cfscript .
Общий формат выглядит следующим образом:
<!--- tag version --->
<cfwhatever arg1="val1" arg2="val2" ... />
<!--- script version --->
<cfscript>
cfwhatever(arg1="val1", arg2="val2", ...);
</cfscript>
Когда у вас есть вложенные теги (т.е. cfhttp / cfhttpparam), формат выглядит так:
<!--- tag version --->
<cfwhatever arg1="val1" arg2="val2" ...>
<cfwhateverparam arg3="val3" ... />
</cfwhatever>
<!--- script version --->
<cfscript>
cfwhatever(arg1="val1", arg2="val2", ...) {
cfwhateverparam(arg3="val3", ...);
};
</cfscript>
Gotchas
Мне кажется, я помню (хотя я не нашел документации для этого), что некоторые теги cf*
неподдерживается, если у них уже была альтернатива cfscript до CF11.
Теги CF, используемые в качестве функций, не возвращают значение и генерируют ошибку, если вы попытаетесь использовать их таким образом:
<cfscript>
cfwhatever(arg1="val1", arg2="val2", ...); //THIS IS OK
var myresult = cfwhatever(arg1="val1", arg2="val2", ...); //SYNTAX ERROR!
//generally, this is what you do instead:
var myresult = '';
cfwhatever(arg1="val1", arg2="val2", ..., variable="myresult");
</cfscript>