Módulo:DemoArgs
Ir a la navegación
Ir a la búsqueda
Uso
Módulo de demostración con argumentos
-- Ejemplo de muestra sobre el uso de argumentos. local p = {} -- Sin argumentos, usar como: {{#invoke:DemoArgs|hola_mundo}} function p.hola_mundo() return "¡Hola mundo!" end -- Un argumento, usar como: {{#invoke:DemoArgs|hola|Pepe}} function p.hola(frame) local nombre = frame.args[1] return "¡Hola " .. nombre .. "!" end -- Dos argumentos, usar como: {{#invoke:DemoArgs|suma|5|3}} function p.suma(frame) local num1 = tonumber(frame.args[1]) local num2 = tonumber(frame.args[2]) return num1 + num2 end -- Argumentos con nombre, usar como: {{#invoke:DemoArgs|tengo_fruta|manzanas=5|peras=3}} function p.tengo_fruta(frame) local num_manzanas = frame.args['manzanas'] local num_peras = frame.args['peras'] return 'Tengo ' .. num_manzanas .. ' manzanas y ' .. num_peras .. ' peras' end -- Mezcla de argumentos normales, con nombre y opcionales. -- Usar como: {{#invoke:DemoArgs|tiene_fruta|Pepe|bananas=5|ciruelas=7}} function p.tiene_fruta(frame) local nombre = frame.args[1] local num_bananas = frame.args['bananas'] local num_manzanas = frame.args['manzanas'] local num_ciruelas = frame.args['ciruelas'] local resultado = nombre .. ' tiene:' if num_bananas then resultado = resultado .. ' ' .. num_bananas .. ' bananas' end if num_manzanas then resultado = resultado .. ' ' .. num_manzanas .. ' manzanas' end if num_ciruelas then resultado = resultado .. ' ' .. num_ciruelas .. ' ciruelas' end return resultado end -- Iteración de argumentos, usado como: {{#invoke:DemoArgs|encarga_fruta|piñas=10|kiwis=5}} function p.encarga_fruta(frame) local resultado = 'Tengo:' for nombre, valor in pairs(frame.args) do resultado = resultado .. ' ' .. valor .. ' ' .. nombre end return resultado end -- Iteración de argumentos con uno obligatorio -- Usar como: {{#invoke:DemoArgs|encarga_fruta_2|Pepe|piñas=10|kiwis=5}} function p.encarga_fruta_2(frame) local nombre = frame.args[1] local resultado = nombre .. ' tiene:' for nombre, valor in pairs(frame.args) do if nombre ~= 1 then resultado = resultado .. ' ' .. valor .. ' ' .. nombre end end return resultado end return p