smalljs$molجستجو⌘ Kمستنداتزمین بازیمقایسهاکوسیستمدربارهFA
معرفیGetting Startedمعرفیمدل ذهنیشروع به کاراز تایپ‌اسکریپت به view.treeساختار پروژهابزارهاEssentialsنصبنماهاوضعیت و واکنش‌گراییمسیریابیرندرتست‌نویسیاستقراررفع اشکالDataدریافت دادهطرح‌واره‌های دادهGiper BazaMoreویتریناز React، Vue و Svelteکتابِ آشپزیAdvancedپلاگین‌هافراداده‌های ماژولآفلایننماهای شبح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

معرفی

از React یا Vue می‌آیید و هیچ‌چیز جور درنمی‌آید؟ اول مدل ذهنی را بخوانید: پنج دقیقه دربارهٔ اینکه computed، watch، قلاب‌های چرخهٔ عمر و بارگذاریِ داده کجا رفته‌اند.

‏$mol چیست؟

‏$mol یک فریم‌ورک واکنش‌گرای رابط کاربری است: شما توصیف می‌کنید که رابط چیست، و فریم‌ورک تشخیص می‌دهد که چگونه و چه زمانی آن را به‌روزرسانی کند. نه DOM مجازی، نه اشتراک‌های دستی، نه useEffect. شما کامپوننت‌ها را به‌صورت یک درخت می‌نویسید؛ ‏$mol تنها آنچه را که دیده می‌شود رندر می‌کند و تنها آنچه را که واقعاً تغییر کرده دوباره محاسبه می‌کند.هر کامپوننت از سه فایل تشکیل شده است:name.view.tree — چیدمان اعلانی (یک زبان درختی فشرده)name.view.ts — رفتار (کلاس‌های ساده‌ی TypeScript)name.view.css.ts — سبک‌های نوع‌دار (که کامپایلر بررسی می‌کند)همین جداسازی، تمام ایده است: چیدمان خوانا می‌ماند، منطق قابل آزمون می‌ماند، و سبک‌ها از نظر نوع ایمن می‌مانند.هیچ‌کدام از این سه به‌تنهایی اجباری نیست. درخت کوته‌نوشتی برای ساختاری است که می‌توانید دستی هم بنویسید: از تایپ‌اسکریپت به view.tree یک مؤلفه را به هر دو شکل می‌سازد و کدی را نشان می‌دهد که درخت به آن کامپایل می‌شود.

برای چه کسی است؟

شما یک برنامه‌ی کوچک می‌خواهید که با رشد کردن هم کوچک بماند — رانتایم فشرده است و رندر به‌صورت پیش‌فرض مجازی‌سازی شده است.شما نوع‌ها را همه‌جا دوست دارید — حتی سبک‌ها را هم TypeScript بررسی می‌کند.از سیم‌کشی دستی واکنش‌گرایی خسته شده‌اید — وضعیت در ‏$mol مانند یک صفحه‌گسترده به‌صورت خودکار واکنش‌گرا است.

یک چشیدن

یک شمارنده، به‌طور کامل:1$my_counter $mol_view2 sub /3 <= Count $mol_view4 sub / <= count \5 <= Increment $mol_button6 click? <=> increment?7 sub / <= label \+1namespace $.$$ {2 export class $my_counter extends $.$my_counter {3 @ $mol_mem count() { return 0 }4 @ $mol_action increment() { this.count( this.count() + 1 ) }5 }6}count واکنش‌گراست: هر چیزی که آن را بخواند، هنگام تغییرش به‌طور خودکار دوباره رندر می‌شود. نه setStateای هست، نه آرایه‌ی وابستگی، و نه storeای که باید ثبت شود.

گام بعدی کجاست؟

آماده‌اید چیزی را روی دستگاه خودتان اجرا کنید؟ به شروع سریع بروید و در کمتر از پانزده دقیقه یک برنامه‌ی کارآمد بسازید.
ویرایش این صفحه در GitHubآیا این مفید بود؟بلهخیربعدیمدل ذهنی
در این صفحه‏$mol چیست؟برای چه کسی است؟یک چشیدنگام بعدی کجاست؟
Type to search the documentation.