모듈:IIFE: 두 판 사이의 차이

리버티게임(개발), 모두가 만들어가는 자유로운 게임
둘러보기로 이동 검색으로 이동
>Hsl0
편집 요약 없음
>Hsl0
편집 요약 없음
2번째 줄: 2번째 줄:
__index = function(tbl, source)
__index = function(tbl, source)
return function(frame)
return function(frame)
return require('모듈:TemplateFunction').new(frame.args):parse(source)
local tf = require('모듈:TemplateFunction')
local func = tf.new(frame.args)
return func(source)
end
end
end
end
})
})

2023년 8월 26일 (토) 17:53 판


모듈 설명문서[보기] [편집] [역사] [새로 고침]

위키텍스트 코드 조각에서 nowiki를 해제하고 파라미터에서 사용할 변수를 주입합니다. 자바스크립트의 IIFE와 유사합니다.

사용법

{{#invoke:IIFE|(위키텍스트 코드)|...(위키텍스트 코드에서 사용할 변수)}}

함수 이름이 들어가는 자리에 위키텍스트 코드를 넣고, 그 뒤에 변수를 할당하면 됩니다.

키 없이 변수를 작성하면 1, 2, 3...과 같은 숫자 키에 할당되고, 등호를 사용하여 변수 이름을 지정할 수도 있습니다.

위키텍스트 코드 내에서 변수를 불러오는 것은 틀의 파라미터를 불러오는 방법과 동일합니다. {{{(변수 이름)}}}{{{(변수 이름)|(기본값)}}}와 같이 작성하면 변수값이 그 자리에 들어옵니다.

예시

code_blocks 코드
{{#invoke:IIFE|<nowiki>Hello, {{{1}}}!</nowiki>|World}}
code
낙서장에서 확인
description 결과
5번째 줄에서 Lua 오류: attempt to call field 'new' (a nil value).


return setmetatable({}, {
	__index = function(tbl, source)
		return function(frame)
			local tf = require('모듈:TemplateFunction')
			local func = tf.new(frame.args)
			return func(source)
		end
	end
})