您好,登錄后才能下訂單哦!
這篇文章主要講解了vue如何實現(xiàn)商品列表的添加刪除,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。
我們首先來看下代碼:
<div id="app"> <div class="container"><form class="form-inline"> <div class="form-group"><label for="exampleInputName2">ID:</label> <input id="exampleInputName2" class="form-control" type="text" /></div> <div class="form-group"><label for="exampleInputEmail2">Name:</label> <input class="form-control" type="text" /></div> <button class="btn btn-primary" type="button">提交</button></form> <table class="table table-hover table-striped"> <tbody> <tr> <td>ID</td> <td>品牌名稱</td> <td>添加時間</td> <td>操作</td> </tr> <tr> <td>{{item.id}}</td> <td>{{item.pp_name}}</td> <td>{{item.add_time | getTime()}}</td> <td><a>刪除</a></td> </tr> </tbody> </table> </div> </div> <script type="text/javascript">// <![CDATA[ var app = new Vue({ el: '#app', data: { id : '', name : '', list : [ {id : 1, pp_name : '安踏', add_time : new Date()}, {id : 2, pp_name : '李寧', add_time : new Date()}, {id : 3, pp_name : '捷豹', add_time : new Date()}, {id : 4, pp_name : '悍馬', add_time : new Date()} ] }, methods: { add : function(){ // 數(shù)據(jù)插入數(shù)組操作 this.list.push({id : this.id, pp_name : this.name, add_time : new Date()}); this.id = this.name = '' }, /* 根據(jù)id刪除數(shù)據(jù) 分析: 先要找到這一項數(shù)據(jù)的id,然后根據(jù)id刪除索引 找到索引之后直接調(diào)用數(shù)組的splice方法 */ del : function(id){ this.list.some((item,i) =>{ if(item.id === id){ this.list.splice(i,1); // 在數(shù)組some中 如果返回值為true,則會立即終止后續(xù)的循環(huán) return true; } }) } }, // 時間的過濾 filters:{ getTime:function(value){ let date = new Date(value), Y = date.getFullYear(), m = date.getMonth() + 1, d = date.getDate(), h = date.getHours(), min = date.getMinutes(), s = date.getSeconds(); if(m<10){m = '0' +m;} if(d<10){d = '0' +d;} if(h<10){h = '0' +h;} if(min<10){min = '0' +min;} if(s<10){s = '0' +s;} let t = Y + '-' + m + '-' + d + ' | ' + h + ':' + min + ':' + s; return t; } } }) // ]]></script>
內(nèi)容補充:
vue中注冊組件,實現(xiàn)列表的添加刪除效果
1、首先在html的<code><head>標(biāo)簽中</code>導(dǎo)入vue.js
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
2、在body中創(chuàng)建一個應(yīng)用vue模板的容器
// vue起作用的區(qū)域root <div id="root"> // input與mesg數(shù)據(jù)綁定 <input v-model="mesg" /> <button @click="handle">提交</button> <ul> <todo-item v-for='(item,index) in list' :key='index' :index='index' :content='item' @delete='deletes'></todo-item> </ul> </div>
3、在script標(biāo)簽中創(chuàng)建并注冊名為todo-item的組件
Vue.component('todo-item', { props: ['content', 'index'], template: '<li @click="handelClick">{{content}}</li>', methods: { handelClick: function() { //點擊li元素就觸發(fā)delete方法 this.$emit('delete', this.index); } } })
4、在script標(biāo)簽中初始化vue實例
new Vue({ el: '#root', data() { return { list: [], mesg: '' } }, methods: { //點擊提交按鈕,輸入文本信息就加入列表 handle: function() { if(this.mesg==''){ return; } this.list.push(this.mesg); this.mesg = '' }, deletes: function(index) { alert(index) this.list.splice(index, 1); } } })
看完上述內(nèi)容,是不是對vue如何實現(xiàn)商品列表的添加刪除有進一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。