vuejs響應(yīng)用戶事件(如點(diǎn)擊事件)
需求:
頁面上的列表原先有3個,我們想點(diǎn)擊一次添加一條記錄,也可以在頭和尾刪除數(shù)據(jù);
我們也可以刪除我們想刪除的任意一行記錄;
如果是用傳統(tǒng)的jquery操作,頁面中js會特別多,而且操作也很麻煩。
這里用vue.js就非常簡單。
我們先看頁面效果:

頁面初始化.png

末尾增加一項(xiàng).png

刪除項(xiàng).png
再來看代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title>demo04</title>
<link rel="stylesheet" href="../css/base/bootstrap.min.css" rel="external nofollow" >
<link rel="stylesheet" href="../css/base/common.css" rel="external nofollow" >
</head>
<body>
<div class="container mt15" id="ul-lists">
<ul class="list-group" v-for="item in items">
<li class="list-group-item">
<span class="label label-default label-pill pull-right" v-on:click="removeTodo($index)">×</span>
{{item.text}} {{$index}}
</li>
</ul>
<p class="mt15">
<button type="button" class="btn btn-info" v-on:click="addAtLast($index)">在末尾增加一項(xiàng)</button>
<button type="button" class="btn btn-secondary" v-on:click="deleteAtTop($index)">刪除第一項(xiàng)</button>
<button type="button" class="btn btn-secondary" v-on:click="deleteAtBottom($index)">刪除最后一項(xiàng)</button>
</p>
</div>
<script src="../js/base/vue.js"></script>
<script src="../js/base/jquery.min.js"></script>
<script src="../js/base/bootstrap.min.js"></script>
<script>
new Vue({
el: '#ul-lists',
data: {
items: [
{ text: 'item' },
{ text: 'item' },
{ text: 'item' }
]
},
methods: {
removeTodo: function (index){
this.items.splice(index, 1)
},
addAtLast: function(index){
this.items.push({ text: 'item' })
},
deleteAtTop: function(index){
this.items.shift();
},
deleteAtBottom: function(index){
this.items.pop();
}
}
});
</script>
</body>
</html>
在上面的代碼中,我們主要是通過方法來管理Items這個數(shù)據(jù),從而實(shí)現(xiàn)頁面上的交互。
splice、push、shift、pop的用法和在js中一樣。
因?yàn)檫@里的例子都不難,就不詳細(xì)說了,大家可以照著上面的代碼試試。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
vue+moment實(shí)現(xiàn)倒計(jì)時效果
這篇文章主要為大家詳細(xì)介紹了vue+moment實(shí)現(xiàn)倒計(jì)時效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-08-08
Vuex進(jìn)行Echarts數(shù)據(jù)頁面初始化后如何更新dom
這篇文章主要為大家詳細(xì)介紹了使用Vuex做Echarts數(shù)據(jù)時,當(dāng)頁面初始化后如何更新dom,文中的示例代碼講解詳細(xì),有需要的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-11-11
Vue封裝遠(yuǎn)程下拉框組件的實(shí)現(xiàn)示例
本文主要介紹了Vue封裝遠(yuǎn)程下拉框組件的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
詳解Vue3中的watch偵聽器和watchEffect高級偵聽器
這篇文章主要介紹了Vue3中的watch偵聽器和watchEffect高級偵聽器,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08
vue啟動后請求后端接口報ERR_EMPTY_RESPONSE錯誤的解決
這篇文章主要介紹了vue啟動后請求后端接口報ERR_EMPTY_RESPONSE錯誤的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05

