<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      vue+elementUI 實現(xiàn)設(shè)置還款日字母彈窗組件

      1、業(yè)務(wù)背景

      還款業(yè)務(wù),設(shè)置每月還款日,選每月幾號扣款,不需要29、30、31,因為不是每個月都有這三天的

      2、預(yù)期效果圖

      3、代碼實現(xiàn)

      3.1 初始化vue項目

      地址:https://cn.vuejs.org/guide/introduction.html

      3.2 在項目中應(yīng)用elementUI

      地址:https://element.eleme.io/#/zh-CN/component/installation

      3.3 在main.js中引用

      import Vue from 'vue'
      import ElementUI from 'element-ui'
      import 'element-ui/lib/theme-chalk/index.css'
      import App from './App'
      import router from './router'
      
      Vue.use(ElementUI)
      
      new Vue({
        el: '#app',
        router,
        components: { App },
        template: '<App/>'
      })
      

      3.4 編寫字母按鈕組件(完整代碼在最后)

      <template>
        <div class='box'>
          <span
            class='inner'
            @click='selectClick(index, item)'
            :class="'list_'+index"
            v-for='(item, index) in numberArr'
            :key='index'
            >{{ item }}</span
          >
        </div>
      </template>
      

      3.5 引用字母按鈕組件(完整代碼在最后)

      <template>
        <div id="app">
          <button @click="handleNumberClick">點擊調(diào)用獲取還款日組件方法</button>
          <el-dialog
            title="設(shè)置還款日"
            append-to-body
            :visible.sync="showDialog"
            width="350px">
            <number-select ref="numberSelect" :showDialog="showDialog" @hideModal="hideModal" />
          </el-dialog>
          <div>設(shè)置還款日期為{{this.sendNum}}</div>
        </div>
      </template>
      

      4、實際效果圖

      chrome-capture-2023-1-17.gif

      5、完整代碼

      5.1 設(shè)置還款日組件頁面 NumberSelect.vue

      <!-- 設(shè)置還款日組件頁面 NumberSelect.vue -->
      <template>
        <div class='box'>
          <span
            class='inner'
            @click='selectClick(index, item)'
            :class="'list_'+index"
            v-for='(item, index) in numberArr'
            :key='index'
            >{{ item }}</span
          >
        </div>
      </template>
      
      <script>
      export default {
        props: {
          sendNumber: Number,
          showDialog: {
            type: Boolean,
            default: false,
            required: true // 必傳遞
          }
        },
        name: 'numberSelect',
        data () {
          return {
            numberArr: [],
            index: 0
          }
        },
        methods: {
          // 選擇按鈕
          selectClick (idx, item) {
            this.sendNum = item
            var len = this.numberArr.length
            for (var i = 0; i < len; i++) {
              if (i === idx) {
                document.getElementsByClassName(
                  'list_' + i
                )[0].style.backgroundColor = 'skyblue'
              } else {
                document.getElementsByClassName(
                  'list_' + i
                )[0].style.backgroundColor = ''
              }
            }
            this.$emit('hideModal')
          }
        },
        // 創(chuàng)建28個字母按鈕數(shù)組
        created () {
          for (var i = 1; i <= 28; i++) {
            this.numberArr.push(i)
          }
        }
      }
      </script>
      
      <style>
      .box {
        margin: 0 auto;
        background-color: #fff;
        width: 300px;
        height: 240px;
        display: flex;
        flex-wrap: wrap;
      }
      .inner {
        margin-left: 10px;
        margin-top: 10px;
        text-align: center;
        line-height: 30px;
        width: 30px;
        height: 30px;
        border: 1px solid #000;
        border-radius: 50%;
        background-color: #fff;
        display: inline-block;
        cursor: pointer;
      }
      </style>
      
      

      5.2 設(shè)置還款日組件頁面 NumberSelect.vue

      <template>
        <div id="app">
          <button @click="handleNumberClick">點擊調(diào)用獲取還款日組件方法</button>
          <el-dialog
            title="設(shè)置還款日"
            append-to-body
            :visible.sync="showDialog"
            width="350px">
            <number-select ref="numberSelect" :showDialog="showDialog" @hideModal="hideModal" />
          </el-dialog>
          <div>設(shè)置還款日期為{{this.sendNum}}</div>
        </div>
      </template>
      
      <script>
      import NumberSelect from './components/NumberSelect.vue'
      export default {
        components: { NumberSelect },
        name: 'App',
        data () {
          return {
            showDialog: false, // 是否顯示還款日組件
            sendNum: 0 // 還款日組件選中的值
          }
        },
        methods: {
          // 點擊設(shè)置還款日按鈕
          handleNumberClick () {
            this.showDialog = true
          },
          // 關(guān)閉彈窗
          hideModal () {
            this.showDialog = false
            console.log('確認(rèn)的數(shù)字為:' + this.$refs.numberSelect.sendNum)
            this.sendNum = this.$refs.numberSelect.sendNum
          }
        }
      }
      </script>
      
      <style>
      #app {
        font-family: 'Avenir', Helvetica, Arial, sans-serif;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        text-align: center;
        color: #2c3e50;
        margin-top: 60px;
      }
      </style>
      
      

      若本文有幫助到閱讀本文的同學(xué),歡迎點贊、關(guān)注、收藏,互相學(xué)習(xí)交流。

      posted @ 2023-02-17 11:29  GoodTimeGGB  閱讀(38)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 日本丰满熟妇videossex一| 久久夜色国产噜噜亚洲av| 国产精一区二区黑人巨大| 午夜男女爽爽影院免费视频下载 | 噜噜久久噜噜久久鬼88| 亚洲日本欧洲二区精品| 日韩精品不卡一区二区三区| 国产亚洲一二三区精品| 国产啪视频免费观看视频| 丁香婷婷无码不卡在线| 国产成人午夜福利院| 国产午夜福利不卡在线观看| 日本一区二区三区东京热| 日韩精品亚洲精品第一页| 迁西县| 国产又爽又黄又无遮挡的激情视频| 无码日韩av一区二区三区| 精品国产欧美一区二区三区在线| 久久精产国品一二三产品| 国产精品人伦一区二区三| 无码专区视频精品老司机| 亚洲精品国产一二三区| 久久亚洲精品11p| 免费观看日本污污ww网站69| 国产精品中文字幕在线| 日本一区二区三区东京热| 99国产欧美另类久久久精品| 男女猛烈无遮挡免费视频| 9lporm自拍视频区| 中文字幕无线码在线观看| 日韩在线成年视频人网站观看| 岛国岛国免费v片在线观看| 日本熟妇浓毛| 蜜桃视频一区二区在线观看| 金沙县| 日韩精品一区二区三免费| 在线国产精品中文字幕| 久久九九兔免费精品6| 四虎成人精品永久免费av| 亚洲成色精品一二三区| 国内精品伊人久久久久av|