初學Vue之記事本案例

初學Vue之記事本案例

  • 案例功能需求
  • 相關Vue知識
  • 案例實現
    • 1.實現方法及代碼
    • 2.演示
  • 案例收獲與總結

案例功能需求

基于Vue實現記事功能(不通過原生JS實現)

1.點擊保存按鈕將文本框的內容顯示在特定位置,且清空文本框內容
2.點擊清空按鈕,將文本框內容清空,并把計數歸0
3.能夠對增添的每條信息進行刪除操作,并依次遞增有序排列

相關Vue知識

(一)選項式API的核心選項
1.data():定義組件的狀態即響應式數據
2.methods:定義組件內的方法
3.computed:計算屬性,返回數據

(二)指令
1.v-for:渲染列表指令,可以基于數組、對象重復生成元素
2.v-on:綁定事件監聽器指令,監聽點擊、鍵盤輸入等事件
3.v-model:雙向數據綁定

(三)文本插值
通過雙大括號將數據插入Html頁面中

案例實現

1.實現方法及代碼

(一)通過給文本框添加v-model=”msg“指令,進行數據的雙向綁定,msg就成為了文本框中輸入的內容。
保存功能:添加v-on指令,指定實現方法save。對msg進行判斷,若不為空則通過.push()將其添加在已經創建的數組后,進行頁面的渲染(基于v-for指令)
清空功能:依舊添加v-on指令,指定實現方法del。將msg的值設為空(由于msg空,因而計數值為0)

(二)刪除功能:通過findIndex()遍歷存儲信息的數組,找到要刪除信息的下標,通過splice()進行刪除

(三)計數實現:通過computed屬性,返回msg的長度

(四)信息的渲染:通過對li添加v-for指令,并將數組存儲的id作為key

(五)細節處理:1.對文本框添加修飾符@keyup.enter,指定實現方法,實現回車進行保存。2.在保存的判斷中,若為空,則彈出彈框顯示輸入為空

整合代碼:(html、css、js全為一個文件)

<template><div class="dd1"><h1>記事本</h1><div><div class="d2"><textarea name="" id="" v-model="msg" @keyup.enter="save" placeholder="記錄生活每一天"></textarea><label for="" class="lab_01">{{cou}}/200字</label></div><span><button @click="save">保存</button><label for="" @click="del">清空</label></span></div><div class="dd2"><ol ><li v-for="item in list" :key="item.id" >{{item.contextid}}<input type="submit" value="刪除" @click="del1(item.contextid)"></li></ol></div></div>
</template><script>console.log(new Date())export default {data() {return {msg:"",list:[{id:new Date() ,contextid:'VUE創始人'},{id:new Date(),contextid:'漸進式框架'}]}},methods:{del1(contextid){const l1=this.list.findIndex(item=>item.contextid === contextid)this.list.splice(l1,1)},save(){if(this.msg.trim()!==""){this.list.push({id:new Date(),contextid:this.msg})this.msg=""}else{alert('輸入為空')}},del(){this.msg=""}},computed:{cou(){return this.msg.length}}}
</script><style>*{margin: 0;padding: 0;}h1{text-align: center;}.dd1{border-radius: 30px;background-color: rgb(201, 196, 196);width: 350px;height: 505px;margin: 20px auto;}.dd2{border-radius: 20px;background-color: rgb(231, 173, 173,0.5);width: 90%;height: 275px;margin: 3px auto;overflow-x:hidden ;overflow-y: auto;padding-left: 30px;padding-top: 5px;}.d2{position: relative}textarea{resize: none;display: block;margin: 10px auto;width: 330px;height: 120px;font-size: 20px;outline: none;}button{margin: 0 40%;margin-right: 0;width: 50px;height: 30px;font-size: 17px;}label{margin-left: 5px;cursor: pointer;}label:hover{color: red;}ol{display: block;font-size: 17px;margin-left: 5px;}ol li{position: relative}input{opacity: 0;position: absolute;left: 87%;background-color: rgb(8, 126, 216,0.3);}ol li:hover input{opacity: 1;}.lab_01{font-size: 15px;position: absolute;left: 75.5%;top: 77%;}.lab_01:hover{color: black;cursor:auto}
</style>

2.演示

首頁
在這里插入圖片描述
保存
在這里插入圖片描述
刪除
在這里插入圖片描述

案例收獲與總結

1.當前的Vue3支持選項式API以及組合式API,二者具有顯著區別。組合式是Vue3的新特性,二者具有各自的優缺點。(不展開)

2.v-on指令可以縮寫成@ (@click="f1"或v-on:click=“f1”)

3.使用v-for指令,若寫了index,就要在key中用到,否則頁面會發生報錯

4.使用修飾符@keyup.enter監聽回車事件,能夠提高開發速度,若通過普通方法實現,需要對e進行判斷

5.若想直觀的感受v-model的雙向數據綁定,可以下載相應的插件、擴展進行調試

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/79086.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/79086.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/79086.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

一個linux系統電腦,一個windows電腦,怎么實現某一個文件夾共享

下載Samba linux主機名字不能超過15個字符 sudo dnf install samba samba-client -y 創建共享文件夾 sudo mkdir /shared 配置文件 vim /etc/samba/smb.conf [shared] path /shared available yes valid users linux電腦用戶 read only no browsable yes p…

樹莓派5+edge-tts 語音合成并進行播放測試

簡介 Edge-TTS 是一個基于微軟 Edge 瀏覽器的開源文本轉語音(TTS)工具,主要用于將文本轉換為自然流暢的語音。它利用了微軟 Azure 的 TTS 技術,支持多種語言和聲音,同時具備高質量的語音合成能力。這里簡單演示在樹莓派中安裝該項目進行簡單測試。 開源倉庫地址:https:/…

多模態革命!拆解夸克AI相機技術架構:如何用視覺搜索重構信息交互?(附開源方案對比)

一、技術人必看&#xff1a;視覺搜索背后的多模態架構設計 夸克「拍照問夸克」功能絕非簡單的OCRQA拼接&#xff0c;而是一套多模態感知-推理-生成全鏈路系統&#xff0c;其技術棧值得開發者深挖&#xff1a; 視覺編碼器&#xff1a;基于Swin Transformer V2&#xff0c;支持4…

論文閱讀:2024 ICLR Workshop. A STRONGREJECT for Empty Jailbreaks

總目錄 大模型安全相關研究&#xff1a;https://blog.csdn.net/WhiffeYF/article/details/142132328 A STRONGREJECT for Empty Jailbreaks 對空越獄的 StrongREJECT https://arxiv.org/pdf/2402.10260 https://github.com/dsbowen/strong_reject https://strong-reject.re…

AI生成Flutter UI代碼實踐(一)

之前的雜談中有提到目前的一些主流AI編程工具&#xff0c;比如Cursor&#xff0c;Copilot&#xff0c;Trea等。因為我是Android 開發&#xff0c;日常使用Android Studio&#xff0c;所以日常使用最多的還是Copilot&#xff0c;畢竟Github月月送我會員&#xff0c;白嫖還是挺香…

計網分層體系結構(包括OSI,IP,兩者對比和相關概念)

眾所周知&#xff0c;就像我們計算機領域中的任何東西一樣&#xff0c;計算機網絡也是個分層的體系結構&#xff0c;現代提出的結構就兩種——OSI和TCP/IP&#xff0c;我們先來剖析并對比一下這兩種模型&#xff0c;然后總結一下分層思想中的一些共性。 TCP/IP與OSI結構對比圖 …

面向對象的XML綜合練習

快遞包裹配送管理 需求描述 構建一個快遞包裹配送管理系統&#xff0c;完成以下操作&#xff1a; 記錄每個快遞包裹的信息&#xff0c;包括包裹編號、收件人姓名、收件地址和是否已配送。可以添加新的快遞包裹到系統中。標記某個包裹為已配送狀態。統計所有已配送和未配送的…

什么是鴻蒙南向開發?什么是北向開發?

文章目錄 鴻蒙南向開發 vs 北向開發&#xff1a;底層與生態的雙向賦能一、鴻蒙南向開發&#xff1a;連接硬件的底層基石二、鴻蒙北向開發&#xff1a;構建全場景應用生態三、南向與北向&#xff1a;互補與協同四、如何選擇開發方向?結語 鴻蒙南向開發 vs 北向開發&#xff1a;…

Linux常用命令27——userdel刪除用戶

在使用Linux或macOS日常開發中&#xff0c;熟悉一些基本的命令有助于提高工作效率&#xff0c;userdel命令來自英文詞組user delete的縮寫&#xff0c;其功能是刪除用戶信息。在Linux系統中&#xff0c;一切都是文件&#xff0c;用戶信息被保存到了/etc/passwd、/etc/shadow以及…

[藍橋杯 2021 省 AB] 砝碼稱重 Java

import java.util.*;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt();int[] w new int[n 1];int sum 0; // 所有砝碼重量之和for (int i 1; i < n; i) {w[i] sc.nextInt();sum w[i];}sc.close()…

今天的python練習題

目錄 一、每日一言 二、練習題 三、效果展示 四、下次題目 五、總結 一、每日一言 晚上8點到的&#xff0c;還是會被感動到&#xff0c;有一位列車員同志在檢票期間&#xff0c;叫我到列車員專座位上去坐&#xff0c;我很感激他&#xff0c;溫暖人心&#xff0c;所以人間填我…

20250430在ubuntu14.04.6系統上查看系統實時網速

rootrootubuntu:~$ sudo apt-get install iftop 【不需要root權限】 rootrootubuntu:~$ sudo apt-get install nload rootrootubuntu:~$ sudo apt-get install vnstat 【失敗】 rootrootubuntu:~$ sudo apt-get install speedtest-cli rootrootubuntu:~$ sudo apt-get install …

字節一面:后端開發

前言 這是我字節一面的回憶錄&#xff0c;可能有些不全。 由于博主是Java面試Go崗&#xff0c;操作系統和計網問的還是比較多。 個人感覺字節很喜歡追問&#xff0c;博主被追問拷打的找不到北了&#xff0c;總結還是學的太淺了。 面試官給我的建議&#xff1a;再更深挖一些…

快速掌握大語言模型+向量數據庫_RAG實現

一、前言 結合前面掌握的vLLM部署Qwen7B模型、通過Embedding模型&#xff08;bdg-large-zh模型&#xff09;提取高質量作文內容并預先存儲到Milvus向量數據庫中&#xff0c;我們很容易實現RAG方案進一步提高寫作內容的生成質量。 本篇要實現的目標是&#xff1a;通過FlaskAPI…

【FreeRTOS-列表和列表項】

參照正點原子以及以下gitee筆記整理本博客&#xff0c;并將實驗結果附在文末。 https://gitee.com/xrbin/FreeRTOS_learning/tree/master 一、列表和列表項的簡介(熟悉) 1、什么是列表 答&#xff1a;列表是FreeRTOS中的一個數據結構&#xff0c;概念上和鏈表有點類似&#…

【c++】【STL】queue詳解

目錄 queue的作用什么是容器適配器queue的接口構造函數emptysizefrontback queue類的實現 queue的作用 queue是stl庫提供的一種容器適配器&#xff0c;也就是我們數據結構中學到的隊列&#xff0c;是非常常用的數據結構&#xff0c;特點是遵循LILO&#xff08;last in last ou…

【一】 基本概念與應用領域【數字圖像處理】

考綱 文章目錄 1 概念2005甄題【名詞解釋】2008、2012甄題【名詞解釋】可考題【簡答題】可考題【簡答題】 2 應用領域【了解】2.1 伽馬射線成像【核醫學影像】☆2.2 X射線成像2.3 紫外波段成像2.4 可見光和紅外波段成像2.5 微波波段成像2.6 無線電波段成像2.7 電子顯微鏡成像2…

RAG技術完全指南(一):檢索增強生成原理與LLM對比分析

RAG技術完全指南&#xff08;一&#xff09;&#xff1a;檢索增強生成原理與LLM對比分析 文章目錄 RAG技術完全指南&#xff08;一&#xff09;&#xff1a;檢索增強生成原理與LLM對比分析1. RAG 簡介2. 核心思想3. 工作流程3.1 數據預處理&#xff08;索引構建&#xff09;3.2…

對計網考研中的信道、傳輸時延、傳播時延的理解

對計網考研中的信道、傳輸時延、傳播時延的理解 在學習數據鏈路層流量控制和可靠傳輸那一節的三個協議的最大信道利用率時產生的疑惑 情景&#xff1a; 假如A主機和B主機通過集線器連接&#xff0c;A和集線器是光纖連接&#xff0c;B和集線器也是光纖連接&#xff0c;A給B發…