Help:Parser functions in templates/nl

Bij het toepassen van ParserFuncties op sjabloon parameters, kan een verticale streep ("|") worden gebruikt om een standaardwaarde mee te geven, dit wordt gebruikt als een parameter niet is gedefinieerd. Als het in een #if parser functie wordt gebruikt, wordt de niet expandeerde tekst van de ongedefinieerde parameter uiteindelijk 'true', dat kan een onverwacht resultaat zijn.




 * Voorbeeld A:


 * Resultaat:




 * Voorbeeld B:


 * Resultaat:

Het tweede gebruik (, voorbeeld B) met aanwezige lege standaardwaarde is vaak de gewenste manier om situaties af te handelen als er een parameter is, maar dat die alleen uit lege ruimte bestaat.



Testen en doorgeven ongedefinieerde parameters
Om het verschil te zien tussen een mogelijk lege parameter en een ongedefinieerde, vergelijk de parameter met zichzelf met  en verschillende standaardwaarden. Wat de standaardwaarden zijn maakt niet uit, als ze maar verschillen, meestal wordt een korte waarde gekozen. Het volgende werkt allemaal gelijkwaardig:



In bijzondere gevallen kan een sjabloon zich anders gedragen als een parameter ongedefinieerd is vergeleken met een parameter zonder waarde. Als dit sjabloon met een wrapper sjabloon wordt gebruikt (die gebruikt dezelfde set parameters met een naam), is een manier om te zorgen dat ongedefinieerde parameters ongedefinieerd blijven als volgt (voor genummerde parameters gaat het op dezelfde manier):





ontvangt een gedefinieerde normal_parameter in alle gevallen. Als die normal_parameter leeg is of ongedefinieerd,  ontvangt een lege normal_parameter.

By contrast, the  receives a defined sensitive_parameter only when it is indeed defined; when sensitive_parameter is undefined, the   changes the parameter name to sensitive_parameterNULL. The suffixed parameter name must be meaningless to the  for this to work properly.



Zie ook

 * Extension:Loops#forargs