$mol
検索
⌘ K
ドキュメント
プレイグラウンド
比較
エコシステム
概要
JA
TypeScript から view.tree へ
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
TypeScript から view.tree へ
はじめかた
で書いたコンポーネントは、ふつうの TypeScript クラスです。コンパイルも実行もできますし、$mol のコンポーネントを記述する正式にサポートされた書き方の一つでもあります。
同時にそれは、コンポーネントの仕事とは関係のない四つのことを頭の中に置いておくよう求めてきました。このページではそれを一つずつ取り上げ、それぞれを消してくれる
view
.
tree
の一行を見せます。最後にコンパイラが生成するコードを示すので、ツリーが第二のランタイムではないことを自分で確かめられます。ツリーが生むのは、あなたがすでに書いたあのクラスそのものです。
比較用に、あのファイルをもう一度置いておきます。
1
namespace
$
{
2
3
export class
$my_hello
extends
$mol_page
{
4
5
title
(
)
{
6
return
'Greeting'
7
}
8
9
body
(
)
{
10
return
[
this
.Name
(
)
,
this
.Message
(
)
]
11
}
12
13
@ $mol_mem
14
Name
(
)
{
15
const
obj
=
new
this
.
$
.
$mol_string
16
obj
.
hint
=
(
)
=
>
'Enter your name'
17
obj
.
value
=
(
next
?
:
string
)
=
>
this
.name
(
next
)
18
return
obj
19
}
20
21
@ $mol_mem
22
name
(
next
?
:
string
)
{
23
return
next
?
?
''
24
}
25
26
@ $mol_mem
27
Message
(
)
{
28
const
obj
=
new
this
.
$
.
$mol_view
29
obj
.
sub
=
(
)
=
>
[
this
.greeting
(
)
]
30
return
obj
31
}
32
33
greeting
(
)
{
34
const
name
=
this
.name
(
)
35
return
name
?
`Hello, ${ name }!`
:
'Please enter your name'
36
}
37
38
}
39
40
}
GitHub でこのページを編集
役に立ちましたか?
はい
いいえ
前へ
はじめかた
次へ
プロジェクト構成
このページの内容
子は自分で作り、自分でキャッシュする
データの向きは演算子が語る
双方向束縛は、キー一つで黙って読み取り専用になる
ローカライズ可能な文字列は、キーにするまでただの文字列
コンポーネント全体
コンパイラが吐くもの
手書きのクラスがツールに渡せないもの
分量の話
どちらを書くか
Type to search the documentation.