国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

Vue實(shí)現(xiàn)簡易購物車案例

瀏覽:4日期:2022-09-29 09:47:17

本文實(shí)例為大家分享了Vue實(shí)現(xiàn)簡易購物車的具體代碼,供大家參考,具體內(nèi)容如下

先來看一下完成后的效果吧。

Vue實(shí)現(xiàn)簡易購物車案例

CSS 部分

這里沒什么好說的,就是v-cloak 這一個(gè)知識(shí)點(diǎn)

table{ border: 1px solid #e9e9e9; border-collapse: collapse; border-spacing: 0;}th,td{ padding: 8px 16px; border: 1px solid #e9e9e9; text-align: center;}th{ background-color: #f7f7f7; color: #5c6b77; font-weight: 600;}[v-cloak]{ display: none;}HTML部分

這里說明一些用到的一些Vue的知識(shí)點(diǎn):

v-if v-for v-cloak v-on > @ v-bind > : 方法 methods 計(jì)算屬性 computed 過濾器 filters

<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <meta name='viewport' content='width=device-width, initial-scale=1.0'> <title>購物車</title> <link rel='stylesheet' href='http://www.intensediesel.com/bcjs/style.css' ></head><body> <div v-cloak> <div v-if='books.length'> <table><thead> <tr> <th></th> <th>書籍名稱</th> <th>出版日期</th> <th>價(jià)格</th> <th>購買數(shù)量</th> <th>刪除</th> </tr></thead><tbody> <tr v-for='(item,index) in books'> <th>{{item.id}}</th> <th>{{item.name}}</th> <th>{{item.date}}</th> <!--方案一 保留小數(shù)點(diǎn)和貨幣符號(hào)--> <!-- <th>{{'¥'+item.price.toFixed(2)}}</th> --> <!--方案二--> <!-- <th>{{getFinalPrice(item.price)}}</th> --> <!--方案三--> <th>{{item.price | showPrice}}</th> <th> <button @click='decrement(index)' :disabled='item.count<=0'>-</button> {{item.count}} <button @click='increment(index)'>+</button> </th> <th><button @click='removeHandle(index)'>移除</button></th> </tr></tbody> </table> <h2>總價(jià)格:{{totalPrice | showPrice}}</h2> </div> <h2 v-else> 購物車為空 </h2> </div></body><script src='http://www.intensediesel.com/js/vue.js'></script><script src='http://www.intensediesel.com/bcjs/main.js'></script></html>JS部分

const app = new Vue({ el:'#app', data:{ books:[ {id:1,name:'《算法導(dǎo)論》',date:’2006-9’,price:85.00,count:1 }, {id:2,name:'《UNIX編程藝術(shù)》',date:’2006-2’,price:50.00,count:1 }, {id:3,name:'《編程藝術(shù)》',date:’2008-10’,price:39.00,count:1 }, {id:4,name:'《代碼大全》',date:’2006-3’,price:128.00,count:1 }, ] }, methods: { //這里我們放棄使用方法的形式來求總價(jià)格,轉(zhuǎn)而使用計(jì)算屬性,因?yàn)樗男矢摺? // getFinalPrice(price){ // return '¥'+price.toFixed(2) // }, increment(index){ this.books[index].count++ }, decrement(index){ this.books[index].count-- }, removeHandle(index){ this.books.splice(index,1); } }, computed: { totalPrice(){ // 方案一:普通的for循環(huán) // let totalPrice = 0; // for(let i=0;i<this.books.length;i++){ // totalPrice += this.books[i].price * this.books[i].count // } // return totalPrice // 方案二:for in // let totalPrice = 0; // for(let i in this.books){ // // console.log(i);//1 2 3 4 // totalPrice += this.books[i].price * this.books[i].count // } // return totalPrice // 方案三:for of // let totalPrice = 0; // for(let item of this.books){ // // console.log(item);//這里拿到的就是數(shù)組里的每個(gè)對(duì)象 // totalPrice += item.price * item.count // } // return totalPrice // 方案四:reduce return this.books.reduce(function (preValue, book) {// console.log(book);//分別輸出四個(gè)對(duì)象return preValue + book.price * book.count }, 0) } }, // 過濾器 filters:{ showPrice(price){ return '¥'+price.toFixed(2) } }})

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 宜兰市| 顺昌县| 东丽区| 镇江市| 上思县| 义马市| 清苑县| 江孜县| 介休市| 桂阳县| 洛川县| 枣强县| 桂林市| 莎车县| 葵青区| 车致| 阜新市| 荆州市| 漯河市| 微博| 密山市| 莫力| 淮北市| 江西省| 乌鲁木齐市| 兴义市| 郓城县| 河北省| 西安市| 舒城县| 德庆县| 梁河县| 若羌县| 兴山县| 抚宁县| 鹰潭市| 旅游| 永新县| 油尖旺区| 博爱县| 颍上县|