Шаблон:Ifempty/doc: различия между версиями
Andras (обсуждение | вклад) Нет описания правки |
Andras (обсуждение | вклад) мНет описания правки |
||
| Строка 1: | Строка 1: | ||
{{Docpage}} | {{Docpage}} | ||
{{OnLua|Ifempty|main}} | {{OnLua|Ifempty|main}} | ||
Шаблон '''{{Tl|Ifempty}}''' создан для использования в других шаблонах [[РуСказки|РуСказок]]. Он принимает до девяти параметров и возвращает первый из них, который имеет какое-либо значение. То есть, возвращает первый из вводимых параметров, который определён (не нулевой) и не пуст. Типичный пример использования: | |||
<pre>{{Ifempty| {{{logo|}}} | {{{image|}}} | default.svg }}</pre> | <pre>{{Ifempty| {{{logo|}}} | {{{image|}}} | default.svg }}</pre> | ||
| Строка 18: | Строка 18: | ||
<pre>{{Ifempty| {{{logo|}}} | {{{image|}}} | default.svg }}</pre> | <pre>{{Ifempty| {{{logo|}}} | {{{image|}}} | default.svg }}</pre> | ||
'''Внимание!''' Параметры к {{ | '''Внимание!''' Параметры к {{Tl|Ifempty}} должны использовать палочку "|" наподобии такого: <code><nowiki>{{{logo|}}}</nowiki></code>. В другом случае {{Tl|Ifempty}} будет заполнен и возвратит строку «<nowiki>{{{logo}}}</nowiki>», если ''logo'' не будет определён. | ||
=== Примеры === | === Примеры === | ||
{{Таблица примеров | {{Таблица примеров|t=Ifempty | ||
|\_comment{{=}}Возвращает пустую строку. | |\_comment{{=}}Возвращает пустую строку. | ||
|раз\_comment{{=}}Возвращает первый параметр, который определён и не пуст. | |раз\_comment{{=}}Возвращает первый параметр, который определён и не пуст. | ||
Текущая версия от 13:46, 4 марта 2024
Шаблон {{Ifempty}} создан для использования в других шаблонах РуСказок. Он принимает до девяти параметров и возвращает первый из них, который имеет какое-либо значение. То есть, возвращает первый из вводимых параметров, который определён (не нулевой) и не пуст. Типичный пример использования:
{{Ifempty| {{{logo|}}} | {{{image|}}} | default.svg }}
В параметрах |до = и |после = можно задать предшествующий и последующий текст.
Предыстория
Движок MediaWiki не возвращает значение по умолчанию для пустых параметров. Таким образом, {{{logo|default.svg}}} не возвратит «default.svg», если шаблон был вызван таким образом: {{Template|logo=}}.
Обычным обходом таких проблем является что-то наподобии этого:
{{#if: {{{logo|}}} | {{{logo}}} | default.svg }}
Но этот способ становится сложным, если вы хотите проверить несколько параметров:
{{#if: {{{logo|}}} | {{{logo}}} | {{#if: {{{image|}}} | {{{image}}} | default.svg }}}}
В этом случае вам удобнее использовать данный шаблон:
{{Ifempty| {{{logo|}}} | {{{image|}}} | default.svg }}
Внимание! Параметры к {{Ifempty}} должны использовать палочку "|" наподобии такого: {{{logo|}}}. В другом случае {{Ifempty}} будет заполнен и возвратит строку «{{{logo}}}», если logo не будет определён.
Примеры
| Код | Результат | Комментарий |
|---|---|---|
| {{Ifempty|}} | Возвращает пустую строку. | |
| {{Ifempty|раз}} | раз | Возвращает первый параметр, который определён и не пуст. |
| {{Ifempty|раз|два}} | раз | |
| {{Ifempty|раз|два|три|четыре}} | раз | |
| {{Ifempty||два}} | два | Первый параметр был пуст или не определён, используем второй. |
| {{Ifempty||два|три|четыре}} | два | |
| {{Ifempty||два||четыре}} | два | |
| {{Ifempty||||четыре}} | четыре | |
| {{Ifempty|||||пять}} | пять | Принимаем только 4 параметра, так что в результате будет пустая строка. |
| {{Ifempty|}} | Единственный параметр пуст или не определён, возвращаем пустую строку. | |
| {{Ifempty||||}} | Возвращаем пустую строку. | |
| {{Ifempty|||три}} | три | |
| {{Ifempty|{{{1}}}|{{{2}}}|три}} | {{{1}}} | Ошибка. Обратите внимание на отсутствие палочки "|" у первых двух параметров. |
| {{Ifempty||два}} | два | |
| {{Ifempty|{{{logo}}}|два}} | {{{logo}}} | Ошибка. Обратите внимание на отсутствие палочки "|" у первого параметра. |
| {{Ifempty|||три|до=<префикс>|после=<постфикс>}} | <префикс>три<постфикс> | Префикс и постфикс выводятся, если хотя бы один нумерованный параметр задан. |
| {{Ifempty||||до=<префикс>|после=<постфикс>}} |