vue 实现在同一界面实现组件的动态添加和删除功能


Posted in Javascript onJune 16, 2020

 1.插入静态组件,将自己想要循环的组件显示在页面上,利用v-for进行循环操作,操作包括增删。

//所有要显示的子组件,写在一个li标签,有 v-for循环。
  <li v-for="(item, index) in questionList" v-bind:key="index">
          <el-row :gutter="20">
            <el-col offset="2" :span="4">
              <el-select
                size="small"
                v-model="chooseValue"
                multiple
                placeholdr="请选择试题类型"
                style="width:200px;margin-left:-40px"
              >
                <el-option :value="item.mineStatusValue" style="height:auto">
                  <el-tree
                    :data="data"
                    node-key="id"
                    :props="defaultProps"
                    @node-click="handleNodeClick"
                  ></el-tree>
                </el-option>
              </el-select>
            </el-col>
            <el-col offset="3" :span="3">
              <el-select
                style="margin-left:-30px"
                size="small"
                v-model="item.value"
                placeholder="请选择">
                <el-option
                  v-for="item in questionoptions"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                ></el-option>
              </el-select>
            </el-col>
            <el-col offset="2" :span="4">
              <el-input style="width:45px;" size="small" v-model="count">
                {{ item.count }}
              </el-input>
              <label> /0 </label>
            </el-col>
            <el-col :span="6">
              <el-input style="width:45px;" size="small" v-model="sourcess">
                {{ item.sourcess }}
              </el-input>
              <label>  </label>
              <!-- 在i标签设置删除按钮,运用splice函数。 -->
              <i class="el-icon-remove-outline"
                style="margin-left:20px"
                @click="questionList.splice(index, 1)"
              ></i>

2.增

在方法添加按钮,在点击添加按钮的时候将需要的参数传进数组,遍历数组,达到组件渲染。

//添加试题,组件循环显示
    addQuestion() {
      console.log("添加试题");
      this.questionList.unshift({
        mineStatusValue: this.mineStatusValue,
        questionoptions: this.questionoptions,
        count: this.count,
        sourcess: this.sourcess,
      });
    },

3.删

根据选中的组件,获取它的索引,根据下标把它删掉,更新数组,重选渲染组件。

注:删除的时候用到了splic函数,具体的使用可以自己了解。

<i class="el-icon-remove-outline"
  style="margin-left:20px"
  @click="questionList.splice(index, 1)">
</i>

4.效果

vue 实现在同一界面实现组件的动态添加和删除功能

PS:在Vue组件上动态添加和删除属性方法

如下所示:

在组件上添加属性 this.$set(this.data,"obj",value');

删除属性this.$delete(this.data,"obj",value');

总结

到此这篇关于vue 实现在同一界面实现组件的动态添加和删除的文章就介绍到这了,更多相关vue 组件动态添加和删除内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
层序遍历在ExtJs的TreePanel中的应用
Oct 16 Javascript
javascript调试过程中找不到哪里出错的可能原因
Dec 16 Javascript
实用jquery操作表单元素的简单代码
Jul 04 Javascript
Vuejs第七篇之Vuejs过渡动画案例全面解析
Sep 05 Javascript
关于Javascript中defer和async的区别总结
Sep 20 Javascript
Bootstrap基本组件学习笔记之进度条(15)
Dec 08 Javascript
为Jquery EasyUI 组件加上清除功能的方法(详解)
Apr 13 jQuery
JS实现微信摇一摇原理解析
Jul 22 Javascript
Bootstrap实现下拉菜单多级联动
Nov 23 Javascript
electron实现qq快捷登录的方法示例
Oct 22 Javascript
微信小程序 生成携带参数的二维码
Oct 23 Javascript
vue穿梭框实现上下移动
Jan 29 Vue.js
详解JS预解析原理
Jun 16 #Javascript
深入了解JS之作用域和闭包
Jun 16 #Javascript
JS数组及对象遍历方法代码汇总
Jun 16 #Javascript
浅谈Vue 函数式组件的使用技巧
Jun 16 #Javascript
原生JS实现天气预报
Jun 16 #Javascript
vue实现公告栏文字上下滚动效果的示例代码
Jun 16 #Javascript
原生JS实现无缝轮播图片
Jun 24 #Javascript
You might like
PHP的构造方法,析构方法和this关键字详细介绍
2013/10/22 PHP
PHP生成随机数的方法实例分析
2015/01/22 PHP
给WordPress的编辑后台添加提示框的代码实例分享
2015/12/25 PHP
PHP使用Redis长连接的方法详解
2018/02/12 PHP
laravel 解决强制跳转 https的问题
2019/10/22 PHP
Jquery ThickBox插件使用心得(不建议使用)
2010/09/08 Javascript
说明你的Javascript技术很烂的五个原因
2011/04/26 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
javascript的事件触发器介绍的实现
2014/06/05 Javascript
JavaScript中的各种操作符使用总结
2016/05/26 Javascript
jQuery包裹节点用法完整示例
2016/09/13 Javascript
React-router中结合webpack实现按需加载实例
2017/05/25 Javascript
JS实现合并json对象的方法
2017/10/10 Javascript
Bootstrap实现翻页效果
2017/11/27 Javascript
JS计算输出100元钱买100只鸡问题的解决方法
2018/01/04 Javascript
js实现复制功能(多种方法集合)
2018/01/06 Javascript
JS实现简单日历特效
2020/01/03 Javascript
JS实现简单打字测试
2020/06/24 Javascript
python实现多线程暴力破解登陆路由器功能代码分享
2015/01/04 Python
Linux系统上Nginx+Python的web.py与Django框架环境
2015/12/25 Python
基于python traceback实现异常的获取与处理
2019/12/13 Python
Win10里python3创建虚拟环境的步骤
2020/01/31 Python
html svg生成环形进度条的实现方法
2019/09/23 HTML / CSS
中国最大的潮流商品购物网站:YOHO!BUY有货
2017/01/07 全球购物
FORZIERI福喜利中国官网:奢侈品购物梦工厂
2019/05/03 全球购物
Chi Chi London官网:购买连衣裙和礼服
2020/10/25 全球购物
社会保险接收函
2014/01/12 职场文书
毕业晚会主持词
2014/03/24 职场文书
整顿机关作风心得体会
2014/09/10 职场文书
天那边观后感
2015/06/09 职场文书
记者节感言
2015/08/03 职场文书
2016年教师学习教师法心得体会
2016/01/20 职场文书
2016年庆“七一”主题党日活动总结
2016/04/05 职场文书
javaScript Array api梳理
2021/03/31 Javascript
SpringBoot实现异步事件驱动的方法
2021/06/28 Java/Android
html form表单基础入门案例讲解
2021/07/21 HTML / CSS