vue中注册组件,实现列表的添加删除效果

提示:input输入点击提交,则列表增加一条文本,点击列表内任意一条文本信息,则删除该条文本信息

1、首先在html的<code><head>标签中</code>导入vue.js

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>

2、在body中创建一个应用vue模板的容器

// vue起作用的区域root
<div id="root">
// input与mesg数据绑定
<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标签中创建并注册名为todo-item的组件

Vue.component('todo-item', {
props: ['content', 'index'],
template: '<li @click="handelClick">{{content}}</li>',
methods: {
handelClick: function() {
//点击li元素就触发delete方法
this.$emit('delete', this.index);
}
}
})

4、在script标签中初始化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);
}
}
})

附:第三步与第四步截图
第三步与第四步截图
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 11,921评论 0 17
  • A winner's timing is right.Winners repond appropriately t...
    阿途阅读 2,312评论 0 1
  • 在日益忙碌的如今,网络成为了人们交友的最佳途径,足不出户,就能在茫茫网海中搜寻到志同道合的朋友和一见倾心的恋人。 ...
    何娜娜GL阅读 6,837评论 0 3
  • 她从木楼梯走上来,他坐在茶几前似乎在冥想。见她上来,说道:“坐这边!”她坐在他旁边,听他说到:“这个白色的杯是白天...
    一粒简单阅读 1,459评论 0 0
  • 叨叨戚 链接|无法证伪的理论,都是耍流氓 哲学/科学与神学/玄学都狂想。但区别是,神学和玄学没有能力/意愿/勇气面...
    船长戚戈XGeek001阅读 2,795评论 0 0

友情链接更多精彩内容