$mol
搜尋
⌘ K
文件
遊樂場
比較
生態系統
關於
ZH_HK
食譜
Getting Started
介紹
心智模型
快速開始
從 TypeScript 到 view.tree
專案結構
工具鏈
Essentials
安裝
視圖
狀態與響應式
路由
渲染
測試
部署
疑難排解
Data
資料獲取
資料模式
Giper Baza
More
展示
來自 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
食譜
針對幾乎每個應用都會遇到的任務,提供簡短、可直接複製的食譜。每一條都是真實的 $mol 程式碼——改一下名字就能用。
雙向綁定的輸入框
無需接線任何處理器,就讓輸入框和衍生值保持同步:
<
=
>
雙向綁定,任何讀取該值的計算屬性都會自動更新。
1
$my_greeter
$mol_view
2
sub
/
3
<=
Name
$mol_string
4
value
?
<=>
name
?
5
<=
Hello
$mol_view
6
sub
/
<=
greeting
\
1
namespace
$
.
$$
{
2
export class
$my_greeter
extends
$
.
$my_greeter
{
3
@ $mol_mem
name
(
next
?
:
string
)
{
return
next
?
?
''
}
4
5
@ $mol_mem
greeting
(
)
{
6
return
this
.name
(
)
?
`Hello, ${ this.name() }!`
:
'Type your name'
7
}
8
}
9
}
可增刪的清單
把集合保存在響應式屬性裡,並在動作中以不可變方式重寫它。帶鍵的
Row
*
為每個項目渲染一列——得益於
虛擬化渲染
——只有可見的列才會被建立。
1
$my_todo
$mol_view
2
draft
?
\
3
items
/
4
sub
/
5
<=
Input
$mol_string
6
value
?
<=>
draft
?
7
hint
\New item
8
<=
Add
$mol_button_major
9
click
?
<=>
add
?
10
sub
/
<=
add_label
\Add
11
<=
List
$mol_list
12
rows
<=
item_rows
/
13
Row
*
$mol_row
14
sub
/
15
<=
Label
*
$mol_view
16
sub
/
<=
item_title
*
\
17
<=
Delete
*
$mol_button_minor
18
click
?
<=>
delete
*
?
19
sub
/
<=
delete_label
\✕
1
namespace
$
.
$$
{
2
export class
$my_todo
extends
$
.
$my_todo
{
3
@ $mol_mem
draft
(
next
?
:
string
)
{
return
next
?
?
''
}
4
@ $mol_mem
items
(
next
?
:
readonly
string
[
]
)
{
return
next
?
?
[
]
}
5
6
@ $mol_action
add
(
)
{
7
const
title
=
this
.draft
(
)
.trim
(
)
8
if
(
!
title
)
return
9
this
.items
(
[
.
.
.
this
.items
(
)
,
title
]
)
10
this
.draft
(
''
)
11
}
12
13
@ $mol_action
delete
(
id
:
number
)
{
14
this
.items
(
this
.items
(
)
.filter
(
(
_
,
i
)
=
>
i
!
=
=
id
)
)
15
}
16
17
item_title
(
id
:
number
)
{
return
this
.items
(
)
[
id
]
}
18
19
item_rows
(
)
{
20
return
this
.items
(
)
.map
(
(
_
,
id
)
=
>
this
.Row
(
id
)
)
21
}
22
}
23
}
在 GitHub 上編輯此頁
這有幫助嗎?
是
否
上一頁
來自 React、Vue 和 Svelte
下一頁
外掛
本頁內容
雙向綁定的輸入框
可增刪的清單
帶載入與錯誤狀態的資料擷取
持久化本地狀態
讀寫路由參數
加入自動的淺色/深色主題
下一步
Type to search the documentation.