日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Vue實現購物車實例代碼兩則

瀏覽:199日期:2023-01-17 14:40:26

一、第一種比較簡單

效果圖

Vue實現購物車實例代碼兩則

實現代碼:

<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <meta name='viewport' content='width=device-width, initial-scale=1.0'> <meta http-equiv='X-UA-Compatible' content='ie=edge'> <title>購物車案例</title> <script src='https://cdn.jsdelivr.net/npm/vue/dist/vue.js'></script></head><style> *{ padding: 0; margin:0 } ul li{ width: 1200px; display: flex; align-items: center; justify-content: center; } li div,.total{ display: inline-block; width:200px; height: 50px; line-height: 50px; text-align: center; } button{ width: 60px; height: 40px; text-align: center; line-height: 40px; }</style><body> <div id='app'> <ul> <goodsitem v-for='item in goodslist' :item='item' :key='item.id' @onchange='(type)=>{handleCount(type,item)}' @ondelete='()=>{handleDelete(item.id)}'> </goodsitem> <div style='padding-left: 113px'>總價:{{total}}</div> </ul> </div></body><script> var computed={ props:{ count:{ type:Number, require:true } }, methods:{ handleCount(type){ this.$emit(’onchange’,type) } }, template:`<div style='width:200px'> <button @click='handleCount(’sub’)'>-</button> <span>{{count}}</span> <button @click='handleCount(’add’)' >+</button> </div> ` } var goodsitem={ props:{ item:{ type:Object, require:true } }, methods:{ handleCount(type){ this.$emit(’onchange’,type) }, handleDelete(){ this.$emit(’ondelete’) } }, components:{ computed }, template:`<li> <div>{{item.goodsName}}</div> <div>{{item.price}}</div> <computed :count='item.count' @onchange='handleCount'></computed> <div>{{item.sum}}</div> <div><button @click='handleDelete'>刪除</button></div> </li> ` } var app=new Vue({ el:'#app', data:{ goodslist:[{ id:1, goodsName:'小可愛', price:100, count:1, sum:100 },{ id:2, goodsName:'小可愛', price:200, count:2, sum:400 },{ id:3, goodsName:'小可愛', price:300, count:3, sum:900 },{ id:4, goodsName:'小可愛', price:400, count:1, sum:400 }, ] }, methods:{ handleCount(type,item){ if(type==’add’){ item.count+=1 }else{ if(item.count==1){ this.handleDelete(item.id) return } item.count-=1 } item.sum=item.count*item.price }, handleDelete(id){ return this.goodslist=this.goodslist.filter((item)=>{ return id!=item.id }) } }, computed:{ total(){ return this.goodslist.reduce((total,item)=>{ return total+=item.sum },0) } }, components:{ goodsitem } })</script></html>

二、一個用vue實現的簡單響應式購物車案例

實現結果

Vue實現購物車實例代碼兩則

如上,所有書類數據存在數組里,遍歷顯示在表格中,點擊+和-可以實現數量和總價格的響應式變化,其中,減號到1時便添加了disabled類型,無法點擊。 價格顯示時通過過濾器顯示的,加上Z¥符號和兩位小數。項目結構為三個文件。

index.html

<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Title</title> <link rel='stylesheet' href='http://www.b3g6.com/bcjs/style.css' rel='external nofollow' ></head><body><div id='app'> <div v-if='books.length'> <table> <thead> <tr> <th></th> <th>書籍日期</th> <th>出版日期</th> <th>價格</th> <th>購買數量</th> <th>操作 </th> </tr> </thead> <tbody> <tr v-for='(item,index) in books'> <!--<td v-for='value in item'>{{value}}</td>--> <td>{{item.id}}</td> <td>{{item.name}}</td> <td>{{item.date}}</td> <!--<td>{{getFinalPrice(item.price)}}</td> 下面是過濾器語法--> <td>{{item.price | showPrice}}</td> <td> <button @click='increment(index)' v-bind:disabled='item.count<=1'>-</button> {{item.count}} <button @click='decrement(index)'>+</button> </td> <td> <button @click='removeHandler(index)'>移除</button> </td> </tr> </tbody> </table> <h2>總價格: {{totalprice | showPrice}}</h2> </div> <h2 v-else> 購物車為空</h2></div><script src='http://www.b3g6.com/js/vue.js'></script><script src='http://www.b3g6.com/bcjs/main.js'></script><script></script></body></html>

main.js

const app = new Vue({ el:'#app', data: { books: [ { id: 1, name: ’算法導論’, date: ’2019-01-10’, price: 85.00, count: 1 }, { id: 2, name: ’計算機導論’, date: ’2019-02-14’, price: 90.00, count: 2 }, { id: 3, name: ’科學導論’, date: ’2019-09-10’, price: 85.21, count: 1 }, { id: 4, name: ’網絡導論’, date: ’2019-08-21’, price: 19.02, count: 1 }, ] }, methods:{ getFinalPrice(price) { return ’$’ + price.toFixed(2) }, increment(index){ /*if(this.books[index].count <= 1) return*/ this.books[index].count-- }, decrement(index){ this.books[index].count++ }, removeHandler(index){ this.books.splice(index,1) } }, filters:{ showPrice(price){ return ’$’ + price.toFixed(2) } }, computed:{ totalprice(){ let tprice = 0 for(let i = 0; i< this.books.length; i++) { tprice += this.books[i].price * this.books[i].count } return tprice } }})

style.css

table{ border: 1px solid #e9e9e9; border-collapse: collapse; bordre-spacing: 0;}th, td { padding: 8px 16px; border: 1px solid #e9e9e9; text-align: left;}th{ backgroud-color: #f7f7f7; color: #5c6b77; font-weight: 600;}

到此這篇關于Vue實現購物車實例代碼的文章就介紹到這了,更多相關Vue 購物車內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Vue
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久婷婷丁香| 色综合狠狠操| 欧美韩日一区| 国产精品久久久久久久免费观看| 国产精品日韩精品在线播放| 久久国产麻豆精品| 国产免费久久| 久久精品一区二区三区中文字幕| 欧美精品97| 福利一区二区| 色爱av综合网| 麻豆成人在线| 亚洲精品乱码久久久久久蜜桃麻豆| 日本视频在线一区| 亚洲视频电影在线| 国产日韩欧美三区| 欧美日韩国产观看视频| 黄色亚洲免费| 亚洲精品少妇| 精品久久影院| 亚洲国内精品| 综合干狼人综合首页| 国产日韩一区二区三区在线播放 | 国产精品igao视频网网址不卡日韩| 欧美黑人做爰爽爽爽| 成人久久一区| 久久夜色精品| 国产欧美视频在线| 国产精品一区二区精品视频观看| 国产成人免费精品| 尤物网精品视频| 国产免费av国片精品草莓男男| 国产精品麻豆久久| 男人操女人的视频在线观看欧美| 免费视频一区二区三区在线观看| 91精品一区二区三区综合在线爱| 亚洲网址在线观看| 麻豆视频在线观看免费网站黄| 国产模特精品视频久久久久| 国产欧美一区二区色老头| 久久精品二区三区| 91亚洲无吗| 久久一区二区中文字幕| 午夜日韩av| 久久精品免费看| 美女久久一区| 成人影视亚洲图片在线| 亚洲精品精选| 丁香六月综合| 日本视频在线一区| 欧美日韩国产精品一区二区亚洲| 国产欧美一级| 免费成人在线影院| 欧洲精品一区二区三区| 国产精品一区二区三区www| 亚洲激情av| 日韩在线观看不卡| 久久精品人人| 亚洲精品中文字幕乱码| 成人午夜亚洲| 国产精品巨作av| 亚洲精品在线国产| 成人羞羞视频播放网站| 精品视频在线观看网站| 91精品丝袜国产高跟在线| 亚洲一区二区成人| 国产99久久| 国内自拍视频一区二区三区| 日韩av中文字幕一区| 久久午夜影视| 免费不卡中文字幕在线| 麻豆成全视频免费观看在线看| 人人精品久久| 欧美日韩国产亚洲一区| 在线精品亚洲欧美日韩国产| 国产精品久久久久久久久久妞妞| 国产精品普通话对白| 国产91精品对白在线播放| 四季av一区二区凹凸精品| 国产精品一在线观看| 日本中文字幕视频一区| 香蕉久久国产| 日韩视频一区| 99久久婷婷这里只有精品| 激情综合五月| 久久精品九色| 久久只有精品| 成人在线视频区| 国产伦精品一区二区三区千人斩| 亚洲精品免费观看| 色狠狠一区二区三区| 中文亚洲免费| 欧美日韩免费观看一区=区三区| 色爱综合av| 国产一区日韩欧美| 黄色日韩在线| 一本综合精品| 97se亚洲| 日韩欧美精品一区二区综合视频| 亚洲一二av| 亚洲tv在线| 欧美日韩中文| 国产精品久久久久久av公交车| 亚洲丝袜美腿一区| 色综合视频一区二区三区日韩 | 日本久久成人网| 国产传媒av在线| 久久精品一区二区不卡| 99国产精品免费视频观看| 国产综合亚洲精品一区二| 99在线观看免费视频精品观看| 亚洲欧美日韩精品一区二区| 成人久久一区| 日韩视频不卡| 人人爽香蕉精品| 欧美日韩亚洲国产精品| 欧美激情麻豆| 超碰超碰人人人人精品| 极品日韩av| 亚洲香蕉久久| 国产日韩欧美在线播放不卡| 久久av网址| 四虎884aa成人精品最新| 99热精品在线| 青青伊人久久| 麻豆理论在线观看| 亚洲二区三区不卡| 日韩一区二区久久| 中文字幕视频精品一区二区三区| 国产亚洲欧美日韩在线观看一区二区| 久草精品视频| 欧美日中文字幕| 视频一区日韩精品| 国产精品亚洲四区在线观看| 日韩伦理一区| 日韩国产欧美在线播放| 激情不卡一区二区三区视频在线| av一区在线| 日本视频一区二区| 精品日韩视频| 日本在线成人| 三级精品视频| 蜜臀精品久久久久久蜜臀| 国产剧情在线观看一区| 欧美日韩在线播放视频| 国产精品久久久久久久久久白浆 | 日本成人中文字幕| 国产精品成久久久久| 欧美日韩黑人| 欧美国产日韩电影| 成人羞羞在线观看网站| 亚洲毛片视频| 精品女同一区二区三区在线观看| 婷婷久久一区| 国产精品调教| 国产亚洲毛片| 国产在线观看91一区二区三区 | 国产精品一级| 国产不卡人人| 欧美日韩一区二区三区在线电影| 日韩av一级| 欧美日韩在线精品一区二区三区激情综合 | 精品国产欧美| 一区在线免费| 韩国女主播一区二区三区| 性色一区二区| 国产精品草草| 亚洲精品福利| 一区福利视频| 黄色在线网站噜噜噜| 日韩黄色免费网站| 久久精品高清| 国产精品久久久网站| 六月天综合网| 欧美/亚洲一区| yellow在线观看网址| 久久狠狠亚洲综合| aa亚洲婷婷| 日韩亚洲一区在线| 欧美国产日本| 日韩高清电影免费| 日韩精品影视| 成人污污视频| 国产日韩免费| 日精品一区二区三区| 一区在线观看| 欧美日韩中文一区二区| 国产精选在线| 精品欠久久久中文字幕加勒比| 日本国产一区| 婷婷成人av| 亚洲一区av| 日韩天堂av| 欧美日韩一二三四| 欧美日韩一区二区三区视频播放| 国产白浆在线免费观看| 国产精品大片| 国产精品主播| 国产精品玖玖玖在线资源| 国产毛片久久久|