Vue實(shí)現(xiàn)todo應(yīng)用的示例
背景
首先聲明,本人并不是前端大神,看過我之前的內(nèi)容應(yīng)該知道,我擅長做后端,雖然前端略有涉略,但談不上精通,連熟悉都勉強(qiáng)。寫這個(gè)系列的目的僅僅只是出于好奇,好奇為何前幾年還是JQuery一統(tǒng)天下的前端局面如今為何如此混亂,好奇好好的js是如何被玩的親媽都不認(rèn)識,之所以選擇vue作為切入點(diǎn),完全是因?yàn)関ue簡單,基本看下demo就能入門,既然vue作為目前流行的前端三大框架之一,那么只要了解vue是怎么實(shí)現(xiàn)的,是不是對前端稍微有了一點(diǎn)認(rèn)識,于是在這種想法的促使下,有了這個(gè)系列。
這里模仿vue并不是指我把vue的源碼看了一遍,看懂了然后模仿vue寫,而是語法還是vue的語法,但是實(shí)現(xiàn)我自己想辦法實(shí)現(xiàn),當(dāng)然可以參考vue,但以我前端的水平想完全看懂vue難度有點(diǎn)大,所以如果你想了解vue源碼實(shí)現(xiàn),這個(gè)系列不適合你,但如果你和我一樣,稍微會點(diǎn)js,又對vue源碼無從下手,但又想知道如何實(shí)現(xiàn)跟vue一樣的功能,那么就跟著我一起,我們不看源碼,自己琢磨實(shí)現(xiàn)一個(gè)簡單的vue。
vue實(shí)現(xiàn)todo應(yīng)用
本系列的思路是,用vue實(shí)現(xiàn)一個(gè)簡單應(yīng)用,應(yīng)用中用到vue相關(guān)核心功能,然后代碼保持不變,把vue.js文件替換成我們自己的實(shí)現(xiàn),最終達(dá)到和vue一樣的效果。這里用vue實(shí)現(xiàn)一個(gè)超簡單的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í),在輸入框下方會顯示輸入的內(nèi)容(僅僅為了演示效果,忽略實(shí)際意義)
- 每輸入一條新的todo,下面就會多一項(xiàng)列表項(xiàng)
- 點(diǎn)擊列表項(xiàng)右邊刪除按鈕可以刪除當(dāng)前列表項(xiàng)
demo雖然簡單,但包含了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)用的資料請關(guān)注腳本之家其它相關(guān)文章!
- 使用VueCli3+TypeScript+Vuex一步步構(gòu)建todoList的方法
- 詳解vuex的簡單todolist例子
- webpack4手動搭建Vue開發(fā)環(huán)境實(shí)現(xiàn)todoList項(xiàng)目的方法
- vue實(shí)現(xiàn)todolist基本功能以及數(shù)據(jù)存儲功能實(shí)例詳解
- 使用Vue父子組件通信實(shí)現(xiàn)todolist的功能示例代碼
- Vue實(shí)現(xiàn)todolist刪除功能
- Vue中父子組件通訊之todolist組件功能開發(fā)
- vue todo-list組件發(fā)布到npm上的方法
- vue組件編寫之todolist組件實(shí)例詳解
- 使用Vue完成一個(gè)簡單的todolist的方法
相關(guān)文章
為vue項(xiàng)目自動設(shè)置請求狀態(tài)的配置方法
這篇文章主要介紹了vue項(xiàng)目自動設(shè)置請求狀態(tài)的配置方法,本文通過示例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06解決創(chuàng)建vue項(xiàng)目后沒有vue.config.js文件的問題
這篇文章給大家主要介紹如何解決創(chuàng)建vue項(xiàng)目后沒有webpack.config.js(vue.config.js)文件,文中有詳細(xì)的解決方法,感興趣的朋友可以參考閱讀下2023-07-07Vue響應(yīng)式原理模擬實(shí)現(xiàn)原理探究
這篇文章主要介紹了Vue響應(yīng)式原理,響應(yīng)式就是當(dāng)對象本身(對象的增刪值)或者對象屬性(重新賦值)發(fā)生了改變的時(shí)候,就會運(yùn)行一些函數(shù),最常見的示render函數(shù)2022-09-09Vue集成three.js并加載glb、gltf、FBX、json模型的場景分析
這篇文章主要介紹了Vue集成three.js,并加載glb、gltf、FBX、json模型,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-09-09