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

Начало работы

Установка Mithril.js

Простое приложение

Ресурсы

JSX

ES6+ в старых браузерах

Анимации

Тестирование

Примеры

Интеграция со сторонними библиотеками

Обработка путей

Ключевые концепции

Виртуальные DOM-узлы

Компоненты

Методы жизненного цикла

Ключи

Автоматическая перерисовка

Разное

Сравнение фреймворков

Переход с v1.x

Переход с v0.2.x

API

Содержание страницы

Как читать сигнатуры ​

Разделы сигнатур обычно выглядят так:

vnode = m(selector, attributes, children)

АргументТипОбязательныйОписание
selectorString|ObjectДаCSS селектор или компонент
attributesObjectНетHTML атрибуты или свойства элемента
childrenArray<Vnode>|String|Number|BooleanНетДочерние виртуальные DOM-узлы. Могут быть переданы как аргументы с переменным количеством элементов
возвращаетVnodeВиртуальный DOM-узел

Строка сигнатуры над таблицей демонстрирует общий синтаксис метода, включая имя метода, порядок аргументов и предлагаемое имя переменной для возвращаемого значения.

Столбец Аргумент в таблице указывает, какая часть сигнатуры описывается в соответствующей строке таблицы. Строка возвращает содержит информацию о возвращаемом значении метода.

Столбец Тип определяет ожидаемый тип данных для аргумента.

Символ вертикальной черты (|) указывает, что аргумент может иметь любой из перечисленных типов. Например, String|Object означает, что selector может быть строкой ИЛИ объектом.

Угловые скобки (< >) после Array указывают на ожидаемый тип элементов массива. Например, Array<String> означает, что аргумент должен быть массивом, и все элементы в этом массиве должны быть строками. Угловые скобки после Object указывают на структуру данных "карта" (map). Например, Object<String,Component> означает, что аргумент должен быть объектом, ключи которого являются строками, а значения - компонентами.

Иногда могут встречаться нестандартные типы, указывающие на требуемую структуру объекта. Например, Vnode - это объект, имеющий структуру виртуального DOM-узла.

Столбец Обязательный указывает, является ли аргумент обязательным или необязательным. Если аргумент необязательный, можно установить для него значение null или undefined, либо опустить его, чтобы следующий аргумент занял его место.

Необязательные аргументы ​

Аргументы функции, заключенные в квадратные скобки [ ], являются необязательными. В примере ниже url является необязательным аргументом:

m.request([url,] options)

Splats ​

Splat аргумент означает, что если аргумент является массивом, можно опустить квадратные скобки и передать переменное количество аргументов в метод.

В примере выше это означает, что m("div", {id: "foo"}, ["a", "b", "c"]) можно записать как m("div", {id: "foo"}, "a", "b", "c").

Splats полезны в некоторых языках, компилируемых в JS, таких как CoffeeScript, а также позволяют использовать удобные сокращения в некоторых распространенных случаях.

Сигнатуры функций ​

Функции обозначаются стрелкой (->). Левая часть стрелки указывает типы входных аргументов, а правая часть указывает тип возвращаемого значения.

Например, 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НетДругие атрибуты, передаваемые виртуальному DOM-узлу.
childrenArray<Vnode>|String|Number|BooleanНетДочерние виртуальные DOM-узлы для этой ссылки.
возвращаетVnodeВиртуальный DOM-узел.

Дочерние элементы можно передавать как аргументы с переменным количеством элементов, если иное не указано в тексте.

Элемент без дочерних элементов и/или атрибутов может опустить соответствующий параметр:

vnode = m(Component, attributes)

АргументТипОбязательныйОписание
attributes.hrefObjectДаЦелевой маршрут для перехода.
attributesObjectНетДругие атрибуты, применяемые к возвращаемому виртуальному DOM-узлу
возвращаетVnodeВиртуальный DOM-узел
Pager
Следующая страницаУстановка Mithril.js

Выпущено на условиях лицензии MIT.

Авторские права (c) 2024 Mithril Contributors

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

Выпущено на условиях лицензии MIT.

Авторские права (c) 2024 Mithril Contributors