Skip to content

Commit 021293d

Browse files
authored
プロジェクトの章のフォーマットを統一、後半を発展扱い (#721)
1 parent c70e292 commit 021293d

File tree

1 file changed

+16
-18
lines changed

1 file changed

+16
-18
lines changed

docs/2-browser-apps/06-project/index.mdx

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,16 @@ import todoVideo from "./todo.mp4";
1515

1616
<video src={todoVideo} controls muted />
1717

18-
## ヒント
18+
## 手順
1919

20-
いきなり作るのが難しい場合はタスクを分解してみましょう。今回はルールにある4つの課題をひとつずつ解決していきます
20+
いきなり作るのが難しい場合はタスクを分解してみましょう。今回はルールにある 4 つの課題をひとつずつ解決していきます
2121

2222
1. ToDo を追加できるようにする。
2323
2. ToDo を削除できるようにする。
2424
3. ToDo を編集できるようにする。
2525
4. 空の ToDo を追加できないようにする。
2626

27-
の4つの仕事があるので、まず 1 からやっていきましょう。
27+
の 4 つの仕事があるので、まず 1 からやっていきましょう。
2828

2929
### ステップ 1: ToDo を追加する
3030

@@ -59,9 +59,9 @@ addButton.onclick = () => {
5959
};
6060
```
6161

62-
この時箇条書きの項目として新たに `li` 要素を追加する必要があります。
63-
DOM の章で扱ったように、[`document.createElement` 関数](https://developer.mozilla.org/ja/docs/Web/API/Document/createElement)を使うと新しい要素を作成できます
64-
また、[`Node#appendChild` メソッド](https://developer.mozilla.org/ja/docs/Web/API/Node/appendChild)を用いることで既存の要素内に子要素を追加することができます
62+
このとき、箇条書きの項目として新たに `li` 要素を追加する必要があります。
63+
DOM の章で扱ったように、`document.createElement` 関数を使うと新しい要素を作成できます
64+
また、`Node#appendChild` メソッドを用いることで既存の要素内に子要素を追加することができます
6565

6666
```javascript
6767
const li = document.createElement("li");
@@ -76,7 +76,7 @@ todoText.textContent = todoInput.value; // input 要素に入力された文字
7676
todoInput.value = ""; // input 要素の入力欄を空にする
7777
```
7878

79-
<Details summary='ステップ 1 の解答例'>
79+
<Answer title="ステップ 1">
8080

8181
```html title="index.html"
8282
<!doctype html>
@@ -111,12 +111,12 @@ addButton.onclick = () => {
111111

112112
<ViewSource url={import.meta.url} path="_samples/step1" />
113113

114-
</Details>
114+
</Answer>
115115

116116
### ステップ 2: ToDo を削除する
117117

118118
次に削除ボタンを追加します。
119-
[`document.createElement` 関数](https://developer.mozilla.org/ja/docs/Web/API/Document/createElement) `button` 要素を生成し削除ボタンにしてから [`Node#appendChild` メソッド](https://developer.mozilla.org/ja/docs/Web/API/Node/appendChild)で要素内に追加しましょう
119+
`document.createElement` 関数で `button` 要素を生成し削除ボタンにしてから `Node#appendChild` メソッドで要素内に追加しましょう
120120

121121
削除ボタンを押すと `li` 要素が 1 つ消える機能を実装するためには、ある要素から子要素を取り除く [`Node#removeChild` メソッド](https://developer.mozilla.org/ja/docs/Web/API/Node/removeChild)を使います。
122122

@@ -125,7 +125,7 @@ addButton.onclick = () => {
125125
todoList.removeChild(todoItem);
126126
```
127127

128-
<Details summary='ステップ 2 の解答例'>
128+
<Answer title="ステップ 2">
129129

130130
```html title="index.html"
131131
<!doctype html>
@@ -166,9 +166,9 @@ addButton.onclick = () => {
166166

167167
<ViewSource url={import.meta.url} path="_samples/step2" />
168168

169-
</Details>
169+
</Answer>
170170

171-
### ステップ 3: ToDo を編集する
171+
### ステップ 3 (発展) : ToDo を編集する
172172

173173
編集ボタンをつけてみましょう。
174174

@@ -179,7 +179,7 @@ addButton.onclick = () => {
179179
todoText.textContent = prompt("新しい内容を入力してください。"); // ユーザーに入力を求める
180180
```
181181

182-
<Details summary='ステップ 3 の解答例'>
182+
<Answer title="ステップ 3">
183183

184184
```html title="index.html"
185185
<!doctype html>
@@ -226,9 +226,9 @@ addButton.onclick = () => {
226226

227227
<ViewSource url={import.meta.url} path="_samples/step3" />
228228

229-
</Details>
229+
</Answer>
230230

231-
### ステップ 4: 空の ToDo を入れさせない
231+
### ステップ 4 (発展) : 空の ToDo を入れさせない
232232

233233
[`HTMLButtonElement#disabled` プロパティ](https://developer.mozilla.org/ja/docs/Web/API/HTMLButtonElement/disabled)`true` の時、ボタンはクリックを受け付けなくなります。
234234
入力欄が空の時にこのプロパティを `true` に、それ以外の時は `false` にすることによって空のタスクの追加を防ぐことができます。
@@ -242,9 +242,7 @@ todoInput.oninput = () => {
242242
};
243243
```
244244

245-
## 解答
246-
247-
<Answer>
245+
<Answer title="ステップ 4">
248246

249247
```html title="index.html"
250248
<!doctype html>

0 commit comments

Comments
 (0)