欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue?動態(tài)添加el-input的實現(xiàn)邏輯

 更新時間:2022年06月30日 16:49:59   作者:一起加油  
這篇文章主要介紹了vue?動態(tài)添加el-input的實現(xiàn)代碼,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

一、效果圖

二、實現(xiàn)邏輯

  • 將需要動態(tài)添加的表單項項的綁定值存為一個數(shù)組
  • 以循環(huán)的方式展示form表單
  • 點擊`+`按鈕觸發(fā)事件,向數(shù)組中新加一個item
  • 點擊`-`按鈕觸發(fā)事件,根據(jù)循環(huán)的得到的index來刪除數(shù)組中相對應位置的item三、代碼實現(xiàn)
<template>
  <div>
    <el-button @click="isDilogShow = true" plain>動態(tài)添加input</el-button>
    <el-dialog
      title="特工安排"
      :visible.sync="isDilogShow"
      :close-on-click-modal="false"
      width="400px"
    >
      <el-form ref="form" :model="form">
        <el-form-item>
          <div v-for="(item, index) in List" :key="index" class="content">
            <el-form-item>
              <el-input
                class="numrule"
                type="number"
                style="max-width: 130px"
                v-model.number="item.num"
                placeholder="請輸入代號"
                @input="
                  (val) => {
                    handleNumChange(val, index)
                  }
                "
              ></el-input>
              <span>搭檔為</span>
              <el-select
                v-model="item.name"
                placeholder="請選擇"
                style="max-width: 130px"
              >
                <el-option
                  v-for="item in userList"
                  :key="item.id"
                  :label="item.name"
                  :value="item.name"
                >
                </el-option>
              </el-select>
              <!-- 若表單中沒有值則不可以新增item(可根據(jù)自己的需求進行更改哦) -->
              <span
                v-if="index === 0"
                :class="
                  item.num === null || item.name === ''
                    ? 'change-icon-add'
                    : 'change-icon'
                "
                ><i
                  :style="{
                    pointerEvents:
                      item.num === null || item.name === '' ? 'none' : 'auto',
                  }"
                  class="el-icon-circle-plus-outline"
                  @click="addItem()"
                ></i
              ></span>
              <span v-else class="change-icon" @click="deleteItem(index)"
                ><i class="el-icon-remove-outline"></i
              ></span>
            </el-form-item>
          </div>
        </el-form-item>
        <el-form-item style="text-align: right;">
          <el-button @click="isDilogShow = false">取消</el-button>
          <el-button type="primary" @click="onSubmit">確認</el-button>
        </el-form-item>
      </el-form>
    </el-dialog>
  </div>
</template>
<script>
export default {
  name: "About",
  data() {
    return {
      isDilogShow: false,
      form: {
        name: "",
      },
      List: [{ num: "", name: "" }],
      userList: [
        { id: 1, name: "麻雀" },
        { id: 2, name: "夜鶯" },
        { id: 3, name: "百靈" },
      ],
    }
  },
  methods: {
    handleNumChange(v, i) {
      console.log(v)
      console.log(i)
    },
    onSubmit() {
      console.log("submit!")
    },
    // 新增任務分配
    addItem() {
      this.List.push({
        num: "",
        name: "",
      })
    },
    deleteItem(i) {
      this.List.splice(i, 1)
    },
  },
}
</script>
<style lang="scss">
.content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  span{
    margin: 0 8px;
  }
  .change-icon {
    font-size: 26px;
    cursor: pointer;
  }
  // 點擊事件是否可用 ----> pointer-events:none;
  .change-icon-add {
    font-size: 26px;
    cursor: no-drop;
  }
}
.numrule {
  input::-webkit-outer-spin-button,
  input::-webkit-inner-spin-button {
    -webkit-appearance: none;
  }
  /* Firefox瀏覽器 */
  input[type="number"] {
    -moz-appearance: textfield;
  }
}
</style>

到此這篇關于vue 動態(tài)添加el-input的文章就介紹到這了,更多相關vue 動態(tài)添加el-input內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • vue.js過濾器+ajax實現(xiàn)事件監(jiān)聽及后臺php數(shù)據(jù)交互實例

    vue.js過濾器+ajax實現(xiàn)事件監(jiān)聽及后臺php數(shù)據(jù)交互實例

    這篇文章主要介紹了vue.js過濾器+ajax實現(xiàn)事件監(jiān)聽及后臺php數(shù)據(jù)交互,結合實例形式分析了vue.js前臺過濾器與ajax后臺數(shù)據(jù)交互相關操作技巧,需要的朋友可以參考下
    2018-05-05
  • vue單個元素綁定多個事件問題(例如點擊綁定多個事件方法)

    vue單個元素綁定多個事件問題(例如點擊綁定多個事件方法)

    這篇文章主要介紹了vue單個元素綁定多個事件問題(例如點擊綁定多個事件方法),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • vue項目搭建以及全家桶的使用詳細教程(小結)

    vue項目搭建以及全家桶的使用詳細教程(小結)

    這篇文章主要介紹了vue項目搭建以及全家桶的使用詳細教程(小結),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • 讓你一看就明白的$nextTick講解

    讓你一看就明白的$nextTick講解

    在我們用vue時,我們經(jīng)常用到一個方法是this.$nextTick,相信你也用過,我常用的場景是在進行獲取數(shù)據(jù)后,需要對新視圖進行下一步操作或者其他操作時,發(fā)現(xiàn)獲取不到dom,這篇文章主要給大家介紹了關于$nextTick的相關資料,需要的朋友可以參考下
    2021-07-07
  • 詳解Vue.js搭建路由報錯 router.map is not a function

    詳解Vue.js搭建路由報錯 router.map is not a function

    這篇文章主要介紹了詳解Vue.js搭建路由報錯 router.map is not a function,非常具有實用價值,需要的朋友可以參考下
    2017-06-06
  • Vue3狀態(tài)管理的使用詳解

    Vue3狀態(tài)管理的使用詳解

    這篇文章主要介紹了Vue3狀態(tài)管理的使用詳解,幫助大家更好的理解和學習使用vue框架,感興趣的朋友可以了解下
    2021-04-04
  • Vue中引入使用patch-package為依賴打補丁問題

    Vue中引入使用patch-package為依賴打補丁問題

    這篇文章主要介紹了Vue中引入使用patch-package為依賴打補丁問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • vue單頁應用中如何使用jquery的方法示例

    vue單頁應用中如何使用jquery的方法示例

    最近在工作中遇到的一個需求,需要在vue-cli建立的應用中引入jquery的方式,通過查找相關的資料最終解決了,所以這篇文章主要給大家介紹了關于在vue單頁應用中如何使用jquery的方法示例,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-07-07
  • Vue2與Vue3如何利用install自定義全局確認框組件編寫

    Vue2與Vue3如何利用install自定義全局確認框組件編寫

    這篇文章主要介紹了Vue2與Vue3如何利用install自定義全局確認框組件編寫方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • 使用Vue3封裝一個通用echarts組件詳解

    使用Vue3封裝一個通用echarts組件詳解

    這篇文章主要為大家詳細介紹了使用Vue3封裝一個通用echarts組件詳解的相關知識,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-02-02

最新評論