File tree Expand file tree Collapse file tree 7 files changed +34
-14
lines changed
content/ja/09.workspace/01.todo-list Expand file tree Collapse file tree 7 files changed +34
-14
lines changed Original file line number Diff line number Diff line change @@ -24,7 +24,7 @@ const todos = ref<Todo[]>([
2424])
2525const showUnDoneOnly = ref (false )
2626const isCreateModalOpen = ref (false )
27- const inputTitile = ref (' ' )
27+ const inputTitle = ref (' ' )
2828const inputNote = ref (' ' )
2929const inputDate = ref (' ' )
3030
@@ -56,7 +56,7 @@ function handleSubmit(e: Event) {
5656 const newTodo: Todo = {
5757 id: Date .now (),
5858 done: false ,
59- title: inputTitile .value ,
59+ title: inputTitle .value ,
6060 note: inputNote .value ,
6161 dueDate: inputDate .value ,
6262 }
@@ -123,7 +123,7 @@ interface Todo {
123123 <form @submit =" handleSubmit" >
124124 <div >
125125 <label for =" title" >タイトル</label >
126- <input id =" title" v-model =" inputTitile " type =" text" required >
126+ <input id =" title" v-model =" inputTitle " type =" text" required >
127127 </div >
128128
129129 <div >
Original file line number Diff line number Diff line change 1+ ---
2+ ogImage : true
3+ ---
4+
15# フォーム入力バインディング
26
37Vueでは [ ` v-model ` ] ( https://ja.vuejs.org/api/built-in-directives.html#v-model ) ディレクティブを使うことで、フォーム要素やコンポーネントと「双方向データバインディング」を簡潔に実現できます。ユーザーの入力とVueのデータが常に同期され、フォーム制御が直感的になります。
@@ -32,11 +36,11 @@ Vueでは [`v-model`](https://ja.vuejs.org/api/built-in-directives.html#v-model)
3236<input v-model="text" type="text" />
3337```
3438
35- フォームタイプごとにバインドされる属性やイベントが異なります :
39+ フォームタイプごとにバインドされるプロパティやイベントが異なります :
3640
37- - テキスト・テキストエリア:` value ` 属性と ` input ` イベント
38- - チェックボックス・ラジオ:` checked ` 属性と ` change ` イベント
39- - セレクトボックス:` value ` 属性と ` change ` イベント
41+ - テキスト・テキストエリア:` value ` プロパティと ` input ` イベント
42+ - チェックボックス・ラジオ:` checked ` プロパティと ` change ` イベント
43+ - セレクトボックス:` value ` プロパティと ` change ` イベント
4044
4145例えば、テキストエリア、ラジオボックス、セレクトボックスでは、このように使います:
4246
Original file line number Diff line number Diff line change 1+ ---
2+ ogImage : true
3+ ---
4+
15# リアクティビティー パート2
26
37[ リアクティビティー パート1] ( reactivity-1 ) で、データの変更を監視して、変更時に更新を自動的にトリガーする [ 優れたリアクティビティシステム] ( https://ja.vuejs.org/guide/essentials/reactivity-fundamentals ) の` ref ` について学習しました。
Original file line number Diff line number Diff line change 1+ ---
2+ ogImage : true
3+ ---
4+
15# コンポーネントの v-model
26
37[ フォーム入力バインディング] ( v-model ) で紹介したように、 ` v-model ` はフォーム入力欄とVueのデータを自動で同期してくれる仕組みです。
Original file line number Diff line number Diff line change 1+ ---
2+ ogImage : true
3+ ---
4+
15# スロット
26
37[ スロット] ( https://ja.vuejs.org/guide/components/slots.html#slot-content-and-outlet ) は、親コンポーネントから子コンポーネントの特定の場所にテンプレートを差し込むための仕組みです。
115119
116120名前付きのスロットコンテンツを渡すためには、 ` v-slot ` を利用します。(例: ` <template v-slot:title> ` )
117121
118- ` v-slot ` は ` # ` で省略表記ができます。(例: ` <template #: title> ` )
122+ ` v-slot ` は ` # ` で省略表記ができます。(例: ` <template #title> ` )
119123
120124``` vue
121125<!-- AppModal: 子コンポーネント -->
151155 <form>
152156 <div>
153157 <label for="title">タイトル</label>
154- <input id="title" v-model="inputTitile " type="text" required>
158+ <input id="title" v-model="inputTitle " type="text" required>
155159 </div>
156160 </form>
157161 </AppModal>
174178 <form>
175179 <div>
176180 <label for="title">タイトル</label>
177- <input id="title" v-model="inputTitile " type="text" required>
181+ <input id="title" v-model="inputTitle " type="text" required>
178182 </div>
179183 </form>
180184 </template>
Original file line number Diff line number Diff line change @@ -24,7 +24,7 @@ const todos = ref<Todo[]>([
2424])
2525const showUnDoneOnly = ref (false )
2626const isCreateModalOpen = ref (false )
27- const inputTitile = ref (' ' )
27+ const inputTitle = ref (' ' )
2828const inputNote = ref (' ' )
2929const inputDate = ref (' ' )
3030
@@ -56,7 +56,7 @@ function handleSubmit(e: Event) {
5656 const newTodo: Todo = {
5757 id: Date .now (),
5858 done: false ,
59- title: inputTitile .value ,
59+ title: inputTitle .value ,
6060 note: inputNote .value ,
6161 dueDate: inputDate .value ,
6262 }
@@ -123,7 +123,7 @@ interface Todo {
123123 <form @submit =" handleSubmit" >
124124 <div >
125125 <label for =" title" >タイトル</label >
126- <input id =" title" v-model =" inputTitile " type =" text" required >
126+ <input id =" title" v-model =" inputTitle " type =" text" required >
127127 </div >
128128
129129 <div >
Original file line number Diff line number Diff line change 1+ ---
2+ ogImage : true
3+ ---
4+
15# 復習・まとめ
26
37TODOリストの作成を通して学べる、基本的なVue.jsの機能の説明は以上になります。
@@ -33,7 +37,7 @@ function handleSubmit(e: Event) {
3337 const newTodo: Todo = {
3438 id: Date .now (),
3539 done: false ,
36- title: inputTitile .value ,
40+ title: inputTitle .value ,
3741 note: inputNote .value ,
3842 dueDate: inputDate .value
3943 }
You can’t perform that action at this time.
0 commit comments