日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > vue >内容正文

vue

(vue基础试炼_03)使用vue.js实现TodoList

發(fā)布時(shí)間:2024/9/27 vue 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (vue基础试炼_03)使用vue.js实现TodoList 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

接上一篇:(vue基礎(chǔ)試煉_02)使用vue.js實(shí)現(xiàn)隔2秒顯示不同內(nèi)容https://gblfy.blog.csdn.net/article/details/103841818

指令作用
v-for循環(huán)數(shù)據(jù)
v-on綁定事件
v-model數(shù)據(jù)的雙向綁定

文章目錄

  • 一、需求說明
    • ① 案例文檔
    • ② 基礎(chǔ)代碼
    • ③ 基礎(chǔ)效果圖
  • 二、v-for指令學(xué)習(xí)
    • ① 使用`v-for`指令 循環(huán)顯示列表內(nèi)容
    • ② 使用`v-for`指令 基礎(chǔ)效果圖
    • ③ `v-for` 解說
  • 三、v-on指令學(xué)習(xí)
  • 四、v-model指令學(xué)習(xí)
    • ① v-model作用
    • ② v-model預(yù)測
    • ③ 頁面驗(yàn)證v-model
    • ④ 獲取input的內(nèi)容
    • ⑤ 如何從methods中獲取data中的inputValue
  • 五、獲取內(nèi)容添加內(nèi)容
    • ①思考
    • ② 代碼說明
    • ③ 效果圖
    • ④場景分析
    • ⑤ 清空輸入框內(nèi)容
    • ⑥ 瀏覽器驗(yàn)證
  • 六、TodoList總結(jié)

一、需求說明

① 案例文檔

1. 在頁面上有一個(gè)輸入框和提交按鈕 2. 當(dāng)在輸入框中輸入內(nèi)容,點(diǎn)擊提交按鈕時(shí),內(nèi)容會(huì)顯示在下面的列表中 3. 當(dāng)點(diǎn)擊提交按鈕時(shí),輸入框中的內(nèi)容要清空

② 基礎(chǔ)代碼

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>使用vue.js 實(shí)現(xiàn)TodoList</title> </head> <body> <div id="app"><input type="text"><button>提交</button><ul><li>第一課的內(nèi)容</li><li>第二課的內(nèi)容</li></ul> </div> </body> </html>

③ 基礎(chǔ)效果圖

二、v-for指令學(xué)習(xí)

指令作用
v-for數(shù)據(jù)循環(huán)

① 使用v-for指令 循環(huán)顯示列表內(nèi)容

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>使用vue.js 快速入門hello world</title><!--引入vue.js庫--><script src="vue.js"></script> </head><body> <!--vue接管的div--> <div id="app"><input type="text"><button>提交</button><ul><li v-for="item in list">{{item}}</li></ul> </div><script>/*創(chuàng)建了一個(gè)vue實(shí)例*/var app = new Vue({el: '#app',data: {list: ['第一課的內(nèi)容', '第二課的內(nèi)容']}}); </script> </body> </html>

② 使用v-for指令 基礎(chǔ)效果圖

③ v-for 解說

借助v-for指令循環(huán)list數(shù)據(jù),利用item來循環(huán),循環(huán)的每一項(xiàng)都放到一個(gè)item里面,然后,利用插值表達(dá)式,將item渲染出來

標(biāo)簽指令說明
v-for循環(huán)數(shù)據(jù)
list循環(huán)的list
item循環(huán)的每一項(xiàng)都是一個(gè)item,簡言之,循環(huán)的每一項(xiàng)內(nèi)容都放到item中
{{item}}利用插值表達(dá)式獲取每一個(gè)item的內(nèi)容,在頁面渲染顯示

三、v-on指令學(xué)習(xí)

指令作用
v-on事件綁定

當(dāng)在輸入框中輸入內(nèi)容,點(diǎn)擊提交按鈕時(shí),內(nèi)容會(huì)顯示在下面的列表中
思路分析

1. 剛進(jìn)入頁面應(yīng)該是沒有數(shù)據(jù)的 2. 在點(diǎn)擊提交時(shí),要先該發(fā)生點(diǎn)什么,需要綁定一個(gè)事件,在實(shí)踐中書寫邏輯 3. 在vue中綁定事件用v-on v-on:click="事件名稱" 4. 定義的事件方法函數(shù)要定義在Vue實(shí)例的methods中的鍵值對里面

那當(dāng)點(diǎn)擊提交時(shí),被綁定的handleBtnClick事件方法 去哪找呢?
這個(gè)div屬于vue接管的區(qū)域,因此,當(dāng)觸發(fā)handleBtnClic事件時(shí),vue就會(huì)到vue實(shí)例中的methods中去找handleBtnClick這個(gè)方法,找到之后就會(huì)執(zhí)行。

四、v-model指令學(xué)習(xí)

① v-model作用

指令作用
v-model雙向綁定

② v-model預(yù)測

v-model指的是數(shù)據(jù)的雙向綁定,也就是當(dāng)input框中的內(nèi)容發(fā)生變化的時(shí)候,vue實(shí)例中的data里面的inputValue也會(huì)發(fā)生變化;同樣當(dāng)vue實(shí)例中的data里面的inputValue這個(gè)變量發(fā)生變化時(shí),頁面也會(huì)跟著發(fā)生變化。

③ 頁面驗(yàn)證v-model

在頁面中開啟F12找到控制臺(tái)Console,在控制臺(tái)中輸出inputValue看看默認(rèn)是什么?
可以借助全局的app變量來實(shí)現(xiàn)

很明顯默認(rèn)是空字符串
當(dāng)在輸入框中輸入內(nèi)容,再到控制臺(tái),在此執(zhí)行上一次命令,看效果

很明顯,現(xiàn)在的inputValue得值和輸入框中一樣。可以概括為,當(dāng)輸入框中的值發(fā)生變化時(shí),vue實(shí)例中的data里面的inputValue的值也會(huì)發(fā)生變化;那咱們反過來試一下,修改vue實(shí)例中的data里面的inputValue的值的數(shù)據(jù),驗(yàn)證頁面輸入框中的值是否跟著變化?

經(jīng)驗(yàn)證,也會(huì)發(fā)上變化。

④ 獲取input的內(nèi)容

當(dāng)點(diǎn)擊提交時(shí),怎樣獲取到input輸入框中的內(nèi)容呢?
使用v-model模板指令獲取input輸入框中內(nèi)容,但是,需要雙向綁定才可以。
把input中的inputValue值和data中的inputValue值做雙向綁定。

⑤ 如何從methods中獲取data中的inputValue

既然input中的inputValue值和data中的inputValue值做雙向綁定。那么data中的inputValue的值其實(shí)就是input框中的inputValue的值,那在methods的handleBtnClick方法中,如何獲取data數(shù)據(jù)配置項(xiàng)中的inputValue的值呢 ?
通過this.inputValue即可,當(dāng)使用this.inputValue時(shí),vue會(huì)自動(dòng)的到數(shù)據(jù)配置項(xiàng)data中找inputValue

測試一下
一開始input礦中的值默認(rèn)是空的,點(diǎn)擊提交,彈框空的

當(dāng)我們在輸入框中,寫內(nèi)容時(shí),再次測試

測試和預(yù)期一樣

五、獲取內(nèi)容添加內(nèi)容

①思考

ul里面有多少個(gè)li,是由data(數(shù)據(jù)配置項(xiàng))中的list決定的。我們每一次提交,只需要將每次提交的數(shù)據(jù)放到list的數(shù)組中就可以了,當(dāng)數(shù)據(jù)發(fā)生變化時(shí),是不是頁面也會(huì)跟這變呢?

② 代碼說明

說明
this.list相當(dāng)于data中的list 數(shù)組
this.list.push意味著王list數(shù)組中添加內(nèi)容
this.inputValuedata中的inputValue 的值

③ 效果圖

④場景分析

每一次提交的時(shí)候,我們可以獲取到每一次inout中的那內(nèi)容,然后把獲取的內(nèi)容添加到list的數(shù)組中,當(dāng)數(shù)據(jù)發(fā)生變化,頁面就會(huì)跟著發(fā)生變化了。

⑤ 清空輸入框內(nèi)容

在輸入框中輸入內(nèi)容,點(diǎn)擊提交,提交到data里面的list數(shù)組中,但是,發(fā)現(xiàn)輸入框中我們輸入的內(nèi)容依然存在,那又該如何清空呢?
我們知道this.inputValue = input中的inputValue,我們是不是只需要改變data數(shù)據(jù)配置項(xiàng)中的inputValue 的值,就可以修改input框中的inputValue 的值,因?yàn)楫?dāng)數(shù)據(jù)法身變化是,頁面也會(huì)法身變化,對吧!既然這樣,那我們當(dāng)點(diǎn)擊提交按鈕,提交完成后,把this.inputValue的值設(shè)置為空,不就可以了。

⑥ 瀏覽器驗(yàn)證

依次輸入123,點(diǎn)擊提交

從上圖我們可以知道和我們預(yù)測的一致。

六、TodoList總結(jié)

整合TodoList編碼中,沒有出現(xiàn)對dom的操作語句,取而代之,我們都在操作數(shù)據(jù),列表中的內(nèi)容我們放在list的數(shù)組中,input框中的內(nèi)容我們放到inputValue中,當(dāng)我們做一些操作的時(shí)候,觸發(fā)點(diǎn)擊事件之后,并不是改變dom,而是去改變數(shù)據(jù);數(shù)據(jù)變了,頁面自動(dòng)的也會(huì)發(fā)生改變,這種形式,就是我們在寫vue編碼時(shí)天天都要用到的模式MVVM設(shè)計(jì)模式。

下一篇:(vue基礎(chǔ)試煉_04)使用組件改造TodoListhttps://gblfy.blog.csdn.net/article/details/103844256

總結(jié)

以上是生活随笔為你收集整理的(vue基础试炼_03)使用vue.js实现TodoList的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。