Skip to content
Mithril.js 2
Main Navigation 가이드API

한국어

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
Italiano
Polski
Türkçe
čeština
magyar

한국어

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
Italiano
Polski
Türkçe
čeština
magyar

외관

Sidebar Navigation

시작하기

설치

간단한 애플리케이션

리소스

JSX

구형 브라우저에서 ES6+ 사용하기

애니메이션

테스트

예제

타사 통합

경로 처리

주요 개념

Virtual DOM 노드

컴포넌트

생명주기 메서드

키

자동 리드로우 시스템

기타

프레임워크 비교

v1.x에서 v2.x로의 마이그레이션

v0.2.x에서 v2.x로 마이그레이션하기

API

이 페이지에서

시그니처 해석 방법 ​

시그니처 섹션은 일반적으로 다음과 같은 형식으로 나타납니다.

vnode = m(selector, attributes, children)

인수타입필수 여부설명
selectorString|Object예CSS 선택자 또는 컴포넌트
attributesObject아니오HTML 속성 또는 엘리먼트 속성
childrenArray<Vnode>|String|Number|Boolean아니오자식 vnode. 스플랫 인수 형태로 작성할 수 있습니다.
반환값Vnodevnode

위 테이블의 시그니처 라인은 메서드의 일반적인 문법을 나타내며, 메서드 이름, 인수의 순서, 반환 값에 대한 변수명 규칙을 보여줍니다.

테이블의 인수 열은 각 행에서 설명하는 시그니처의 인수를 나타냅니다. returns 행은 메서드의 반환 값에 대한 정보를 표시합니다.

타입 열은 각 인수에 대해 예상되는 데이터 타입을 나타냅니다.

파이프(|)는 나열된 타입 중 하나라도 해당하면 인수가 유효함을 의미합니다. 예를 들어 String|Object는 selector가 문자열 또는 객체 타입이 될 수 있음을 나타냅니다.

꺾쇠 괄호(< >)는 Array 뒤에 올 경우 배열 요소의 타입을, Object 뒤에 올 경우 객체 속성의 타입을 나타냅니다. 예를 들어 Array<String>은 문자열로만 이루어진 배열을 의미하며, Object<String,Component>는 키가 문자열이고 값이 컴포넌트인 객체를 의미합니다.

경우에 따라 특정 객체 시그니처가 필요함을 나타내기 위해 기본 타입 대신 구체적인 타입이 사용될 수 있습니다. 예를 들어 Vnode는 가상 DOM 노드 구조를 가진 객체입니다.

필수 여부 열은 인수가 필수인지 선택 사항인지를 나타냅니다. 선택적 인수는 null 또는 undefined로 설정하거나 생략할 수 있으며, 생략하면 다음 인수가 해당 위치에 전달됩니다.

선택적 인수 ​

대괄호 [ ]로 묶인 함수 인수는 선택 사항입니다. 아래 예시에서 url은 선택적 인수입니다.

m.request([url,] options)

스프레드 ​

스플랫 인수는 인수가 배열일 때 대괄호를 생략하고, 메서드에 여러 인수를 가변적으로 전달할 수 있도록 하는 기능입니다.

예를 들어 m("div", {id: "foo"}, ["a", "b", "c"])는 m("div", {id: "foo"}, "a", "b", "c")와 같이 줄여서 작성할 수 있습니다.

스플랫은 자바스크립트로 컴파일되는 언어에서 유용하며, 일반적인 사용 사례에 대한 편리한 단축 표현을 제공합니다.

함수 시그니처 ​

함수는 화살표(->)로 표현됩니다. 화살표 왼쪽은 입력 인수의 타입을 나타내고, 오른쪽은 반환 값의 타입을 나타냅니다.

예를 들어 parseFloat의 시그니처는 String -> Number입니다. 이는 문자열을 입력으로 받아 숫자를 반환한다는 의미입니다.

여러 인수를 받는 함수는 괄호로 묶어 표시합니다. (String, Array) -> Number

컴포넌트 시그니처 ​

컴포넌트는 m 함수를 호출하여 표현하며, 이때 첫 번째 인수인 선택자는 해당 컴포넌트와 관련된 설명에 정의된 상수로 설정됩니다.

vnode = m(m.route.Link, attributes, children)

인수타입필수 여부설명
attributes.hrefObject예이동할 대상 경로입니다.
attributes.selectorString|Object|Function아니오사용할 태그 이름을 설정합니다. 지정된 경우, m에 대한 유효한 선택자여야 하며, 기본값은 "a"입니다.
attributes.optionsObject아니오m.route.set에 전달할 옵션을 설정합니다.
attributesObject아니오반환되는 vnode에 적용할 다른 속성을 전달할 수 있습니다.
childrenArray<Vnode>|String|Number|Boolean아니오이 링크의 자식 vnode.
반환값Vnodevnode.

여기에 지정된 자식 엘리먼트는 별도의 언급이 없는 한 스플랫 인수 형태로 작성할 수 있습니다.

적절한 자식 노드나 속성이 없는 엘리먼트는 관련 매개변수를 완전히 생략할 수 있습니다.

vnode = m(Component, attributes)

인수타입필수 여부설명
attributes.hrefObject예대상 경로
attributesObject아니오반환되는 vnode에 적용할 다른 속성
반환값Vnodevnode
Pager
다음설치

MIT 라이선스 하에 배포되었습니다.

Copyright (c) 2024 Mithril Contributors

https://mithril.js.org/signatures.html

MIT 라이선스 하에 배포되었습니다.

Copyright (c) 2024 Mithril Contributors