Несколько недель назад я подумал, что мне нужен сайт. Поскольку я разработчик Android, я подумал, что это должно быть в материальном дизайне, а поскольку я фанатик-фанатик, я подумал, что это должно быть написано на Kotlin.

Если вы не знали, Kotlin также может компилироваться в JavaScript. Он все еще экспериментальный, но Jetbrain заявила, что они все еще привержены этому. Это то, о чем мы должны заботиться. Если вы не заметили, что JavaScript захватывает мир. Хотя существует множество других транспиляторов JavaScript, если React Native станет таким большим, как кажется, я лучше напишу его на Kotlin, а не на JavaScript.

Для моего сайта Material Design Lite от Google казался самым простым способом сделать это.

Я создал быстрый одностраничный интерфейсный фреймворк под названием Kotlin Material Design Lite… Да, я знаю скучное название. Документация по Kotlin-JavaScript, мягко говоря, невелика. Так что есть большая вероятность, что есть методы получше, чем те, которые я придумал. Это тоже очень неполно. В основном в нем есть только те компоненты, которые мне были нужны. Но я планирую продолжать работать над этим, и любые другие вклады приветствуются. По крайней мере, это отличный способ узнать больше о Kotlin-JavaScript и быть готовым к тому, когда волна JavaScript захлестнет всех нас.

KMDL состоит из трех основных частей.

Этот класс ищет div с идентификатором «MdlApp». В Kotlin-JavaScript вы взаимодействуете с DOM, используя «документ», поэтому, когда я вызываю «document.getElementById (« MdlApp »)», он ищет в HTML элемент с идентификатором MdlApp и возвращает его или null, если не находит. Это.

Другая основная часть - это абстрактный класс MdlComponent. Это то, что используется для создания всех компонентов Material Design Lite.

document.createElement - это то, как Kotlin-JavaScript создает элементы в DOM. Этот класс также интенсивно использует свойства делегата, чтобы упростить создание атрибутов компонентов. Например, Img

Свойство src использует делегат htmlPram, который использует имя свойства для установки атрибутов HTML.

Теперь внутри основной функции просто создайте MdlApp, используя функцию mdlApp.

Последняя часть - это MdlContent.

Он используется для создания содержательных страниц для приложения.

Опять же, проект, такой как Kotlin-JavaScript, все еще экспериментальный, но вы можете взглянуть на код и внести свой вклад здесь.