smalljs$molПоиск⌘ KДокументацияПесочницаСравнениеЭкосистемаО проектеRU
УстановкаGetting StartedВведениеМентальная модельБыстрый стартОт TypeScript к view.treeСтруктура проектаИнструментарийEssentialsУстановкаВьюСостояние и реактивностьРоутингРендерингТестированиеДеплойРешение проблемDataЗагрузка данныхСхемы данныхГипер БазаMoreВитринаИз React, Vue и SvelteСборник рецептовAdvancedПлагиныМетаданные модуляОфлайнGhost-вьюAboutЧастые вопросыКомандаРелизыAPI$mol_button_major$mol_button_minor$mol_string$mol_number$mol_text$mol_paragraph$mol_list$mol_row$mol_link$mol_check$mol_switch$mol_select$mol_scroll$mol_page$mol_pick

Установка

Быстрый старт проведёт вас через первое приложение шаг за шагом. Эта страница — справочник: как устроен $mol-проект и как работает сборка.

Требования

Node.js 18+ и git. Ничего больше глобально не ставится.

Воркспейс MAM

$mol-приложения живут внутри MAM — инструмента сборки и реестра модулей. Вы клонируете его один раз и разрабатываете свои модули внутри:1git clone https://github.com/hyoo-ru/mam.git ./mam2cd mam3npm install4npm startnpm start поднимает следящий дев-сервер на http://localhost:9080/. Он пересобирает при сохранении и разрешает зависимости автоматически — вам не нужно поддерживать конфиг сборщика.

Как именуются модули

Каждое имя компонента соответствует пути к папке, и каждое подчёркивание — разделитель папок:1$my_appmy/app/2$my_app_headermy/app/header/Имена папок-модулей никогда не содержат подчёркивания — для составных имён используйте вложенные папки. Если используемый компонент никак не попадает в бандл, почти всегда путь к папке не совпадает с именем класса.

Анатомия модуля

Компонент — это папка с максимум четырьмя файлами:ФайлНазначениеname.view.treeДекларативная разметкаname.view.tsПоведение (TypeScript)name.view.css.tsТипизированные стилиname.view.tree, index.htmlТочка входа для модуля-приложенияindex.html приложения монтирует корневой компонент:1<body mol_view_root>2 <div mol_view_root="$my_app"></div>3 <script src="web.js"></script>4</body>

Сборка для продакшена

Дев-сервер собирает на лету, но любой модуль можно собрать явно из корня воркспейса:1npm run start my/appРезультат оказывается в my/app/-/ — включая web.js, web.css и web.audit.js. Всегда проверяйте аудит: чистый web.audit.js означает отсутствие неиспользуемых зависимостей и ошибок типов.

Подключение npm-пакетов

Сошлитесь на пакет через require, и MAM установит его при следующей сборке:1const dayjs = require( 'dayjs' ) as typeof import( 'dayjs' )

Дальше

Редактировать эту страницу на GitHubБыло полезно?ДаНетНазадИнструментарийВперёдВью
На этой страницеТребованияВоркспейс MAMКак именуются модулиАнатомия модуляСборка для продакшенаПодключение npm-пакетовДальше
Type to search the documentation.