使用VUE完成代办事项记录,在输入框输入你的代办事项,点击“添加”按钮,则进入未完成项列表中,同时数量增加,点击未完成项中的“删除”按钮,该事项则进入已完成列表,同时数量增加。
时间: 2023-05-26 15:00:57 浏览: 78
A:好的,以下是我为您提供的示例代码,使用了Vue.js和Bootstrap:
HTML部分:
```
<div id="app" class="container my-3">
<div class="row">
<div class="col-md-6">
<div class="card">
<div class="card-header bg-info text-white">
<h4>待办事项</h4>
</div>
<div class="card-body">
<form @submit.prevent="addItem">
<div class="form-group">
<label for="newItem">添加新事项:</label>
<input type="text" class="form-control" id="newItem" v-model="newItem">
</div>
<button type="submit" class="btn btn-primary">添加</button>
</form>
</div>
<ul class="list-group list-group-flush">
<li v-for="(item, index) in items" :key="index" class="list-group-item">
<div class="row">
<div class="col-6">{{ item }}</div>
<div class="col-6 text-right">
<button class="btn btn-sm btn-danger" @click="deleteItem(index)">删除</button>
</div>
</div>
</li>
</ul>
</div>
</div>
<div class="col-md-6">
<div class="card">
<div class="card-header bg-success text-white">
<h4>已完成事项</h4>
</div>
<ul class="list-group list-group-flush">
<li v-for="(item, index) in completedItems" :key="index" class="list-group-item">{{ item }}</li>
</ul>
</div>
</div>
</div>
</div>
```
JavaScript部分:
```
new Vue({
el: "#app",
data: {
newItem: "",
items: [],
completedItems: []
},
methods: {
addItem() {
if (this.newItem !== "") {
this.items.push(this.newItem);
this.newItem = "";
}
},
deleteItem(index) {
const completedItem = this.items.splice(index, 1);
this.completedItems.push(completedItem[0]);
}
},
computed: {
numItems() {
return this.items.length;
},
numCompleted() {
return this.completedItems.length;
}
}
});
```
以上代码演示了如何在Vue实例中使用数据(`data`)来存储未完成事项、已完成事项和新添加的事项。同时,我们使用方法(`methods`)来添加、删除事项,并使用计算属性(`computed`)来计算未完成事项和已完成事项的数量。
希望我的回答能对您有所帮助。
阅读全文