DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>TodoListtitle>
<script src="https://cdn.jsdelivr.net/npm/vue@2.7.8/dist/vue.js">script>
head>
<body>
<div id="app">
<input type="text" v-model="inputValue">
<button v-on:click="handleBtnClick">提交button>
<ul>
<todo-item v-bind:content="item"
v-bind:index="index"
v-for="(item,index) in list" @delete="handleItemDelete">
todo-item>
ul>
div>
<script>
Vue.component('TodoItem',{
props: ['content','index'],
template:"{{content}}",
methods:{
handleItemClick:function(){
this.$emit('delete',this.index)
}
}
});
var app = new Vue({
el:'#app',
data:{
list:[],
inputValue:''
},
methods:{
handleBtnClick:function(){
this.list.push(this.inputValue);
this.inputValue = '';
},
handleItemDelete:function(index){
this.list.splice(index,1)
}
}
})
script>
body>
html>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60