欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Vue的Todolist改进

程序员文章站 2022-03-26 14:35:42
```js 点击 ``` ......
<body>
	<div id='app'>
		<input type="text" v-model="inputvalue"/><br>
		<input type="text" v-model:lazy="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'],
		// 	template: "<li>{{content}}</li>",
		// })

        //局部组件
        var todoitem = {
			props:['content','index'],
			template: "<li @click='handleitemclick'>{{content}}</li>",
			methods:{
				handleitemclick:function(){
					this.$emit("delete", this.index)  //向父组件触发事件
				}
			}
		}

    	var app = new vue({
    		el: '#app',
			//注册组件(局部组件)
			components:{
				todoitem: todoitem
			},
    		data: {
    			list: [],
    			inputvalue:''
    		},
    		methods: {
    			handlebtnclick: function () {
    				this.list.push(this.inputvalue)
    				this.inputvalue = ''
    			},
				handleitemdelete: function(index) {
					this.list.splice(index,1)
				}
    		}

    	})
    </script>
</body>