Vue實(shí)現(xiàn)todo應(yīng)用的示例
背景
首先聲明,本人并不是前端大神,看過(guò)我之前的內(nèi)容應(yīng)該知道,我擅長(zhǎng)做后端,雖然前端略有涉略,但談不上精通,連熟悉都勉強(qiáng)。寫這個(gè)系列的目的僅僅只是出于好奇,好奇為何前幾年還是JQuery一統(tǒng)天下的前端局面如今為何如此混亂,好奇好好的js是如何被玩的親媽都不認(rèn)識(shí),之所以選擇vue作為切入點(diǎn),完全是因?yàn)関ue簡(jiǎn)單,基本看下demo就能入門,既然vue作為目前流行的前端三大框架之一,那么只要了解vue是怎么實(shí)現(xiàn)的,是不是對(duì)前端稍微有了一點(diǎn)認(rèn)識(shí),于是在這種想法的促使下,有了這個(gè)系列。
這里模仿vue并不是指我把vue的源碼看了一遍,看懂了然后模仿vue寫,而是語(yǔ)法還是vue的語(yǔ)法,但是實(shí)現(xiàn)我自己想辦法實(shí)現(xiàn),當(dāng)然可以參考vue,但以我前端的水平想完全看懂vue難度有點(diǎn)大,所以如果你想了解vue源碼實(shí)現(xiàn),這個(gè)系列不適合你,但如果你和我一樣,稍微會(huì)點(diǎn)js,又對(duì)vue源碼無(wú)從下手,但又想知道如何實(shí)現(xiàn)跟vue一樣的功能,那么就跟著我一起,我們不看源碼,自己琢磨實(shí)現(xiàn)一個(gè)簡(jiǎn)單的vue。
vue實(shí)現(xiàn)todo應(yīng)用
本系列的思路是,用vue實(shí)現(xiàn)一個(gè)簡(jiǎn)單應(yīng)用,應(yīng)用中用到vue相關(guān)核心功能,然后代碼保持不變,把vue.js文件替換成我們自己的實(shí)現(xiàn),最終達(dá)到和vue一樣的效果。這里用vue實(shí)現(xiàn)一個(gè)超簡(jiǎn)單的todo應(yīng)用,代碼如下:
<html>
<head>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<input v-model="newTodo"></input>
<button v-on:click="addTodo()">添加</button>
<div>輸入的文字:{{newTodo}}</div>
<ul>
<div v-for="(todo,index) in todos" style="margin-bottom: 20px;">
<li style="float: left;margin-right: 20px;">
{{todo.text}}
</li>
<button v-on:click="deleteTodo(index)">刪除</button>
</div>
</ul>
</div>
<script>
var appx = new Vue({
el: '#app',
data: {
newTodo: '',
todos: []
},
methods: {
addTodo: function () {
this.todos.push({ text: this.newTodo });
this.newTodo = '';
},
deleteTodo: function (index) {
this.todos.splice(index, 1);
}
}
})
</script>
</body>
</html>
效果如下:

- 輸入框值發(fā)生變化時(shí),在輸入框下方會(huì)顯示輸入的內(nèi)容(僅僅為了演示效果,忽略實(shí)際意義)
- 每輸入一條新的todo,下面就會(huì)多一項(xiàng)列表項(xiàng)
- 點(diǎn)擊列表項(xiàng)右邊刪除按鈕可以刪除當(dāng)前列表項(xiàng)
demo雖然簡(jiǎn)單,但包含了vue所有核心功能
- 雙向值綁定(v-model)
- 響應(yīng)式,值發(fā)生變化,綁定的節(jié)點(diǎn)值也同步變化
- 事件響應(yīng)(v-on:click)
- 循環(huán)指令(v-for)
后面的章節(jié),我們不引入vue.js文件,一步步實(shí)現(xiàn)同樣的功能。
以上就是Vue實(shí)現(xiàn)todo應(yīng)用的示例的詳細(xì)內(nèi)容,更多關(guān)于Vue實(shí)現(xiàn)todo應(yīng)用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- 使用VueCli3+TypeScript+Vuex一步步構(gòu)建todoList的方法
- 詳解vuex的簡(jiǎn)單todolist例子
- webpack4手動(dòng)搭建Vue開(kāi)發(fā)環(huán)境實(shí)現(xiàn)todoList項(xiàng)目的方法
- vue實(shí)現(xiàn)todolist基本功能以及數(shù)據(jù)存儲(chǔ)功能實(shí)例詳解
- 使用Vue父子組件通信實(shí)現(xiàn)todolist的功能示例代碼
- Vue實(shí)現(xiàn)todolist刪除功能
- Vue中父子組件通訊之todolist組件功能開(kāi)發(fā)
- vue todo-list組件發(fā)布到npm上的方法
- vue組件編寫之todolist組件實(shí)例詳解
- 使用Vue完成一個(gè)簡(jiǎn)單的todolist的方法
相關(guān)文章
vue 路由頁(yè)面之間實(shí)現(xiàn)用手指進(jìn)行滑動(dòng)的方法
下面小編就為大家分享一篇vue 路由頁(yè)面之間實(shí)現(xiàn)用手指進(jìn)行滑動(dòng)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨跟隨小編過(guò)來(lái)看看吧2018-02-02
vue中g(shù)etters的使用與四個(gè)map方法的使用方式
這篇文章主要介紹了vue中g(shù)etters的使用與四個(gè)map方法的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
vue實(shí)現(xiàn)在頁(yè)面上添加水印的示例代碼
這篇文章主要給大家介紹一下vue實(shí)現(xiàn)在頁(yè)面上添加水印的實(shí)例,文中有詳細(xì)的代碼示例供大家參考,具有一定的參考價(jià)值,感興趣的小伙伴跟著小編一起來(lái)看看吧2023-12-12
vue2.0設(shè)置proxyTable使用axios進(jìn)行跨域請(qǐng)求的方法
這篇文章主要介紹了vue2.0設(shè)置proxyTable使用axios進(jìn)行跨域請(qǐng)求,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10
vue項(xiàng)目使用.env文件配置全局環(huán)境變量的方法
這篇文章主要介紹了vue項(xiàng)目使用.env文件配置全局環(huán)境變量的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
vue 使用 vue-pdf 實(shí)現(xiàn)pdf在線預(yù)覽的示例代碼
這篇文章主要介紹了vue 使用 vue-pdf 實(shí)現(xiàn)pdf在線預(yù)覽的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
Vue組件庫(kù)ElementUI實(shí)現(xiàn)表格加載樹(shù)形數(shù)據(jù)教程
這篇文章主要為大家詳細(xì)介紹了Vue組件庫(kù)ElementUI實(shí)現(xiàn)表格加載樹(shù)形數(shù)據(jù)教程,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06

