首頁 > 軟體

VUE+element開發後臺管理的搜尋功能

2022-04-15 13:00:21

本文範例為大家分享了VUE element後臺管理搜尋功能的具體程式碼,供大家參考,具體內容如下

先看看樣式圖:

實現上面這種簡單搜尋簡單的三步走:

1.頁面樣式:在頁面中使用form表單的校驗功能來實現輸入搜尋。給表單的資料放入搜尋請求的data陣列中,也就是searchParams這個大集合中。

備註:如果給每個輸入框新增了搜尋按鈕的click方法,則會在輸入完成後直接執行列表搜尋。所以考慮自己使用的具體位置。

<div class="search">
    <el-form :inline="true" :model="searchParams" class="demo-form-inline">
        <el-form-item>
            <el-input v-model="searchParams.chanelName" style="width: 160px;" placeholder="請輸入渠道名稱" clearable></el-input>
        </el-form-item>
        <el-form-item>
            <el-input v-model="searchParams.remark" style="width: 180px;" placeholder="請輸入備註內容關鍵詞" clearable></el-input>
        </el-form-item>
        <el-form-item label="">
          <el-select style="width: 160px" v-model="searchParams.chanelType" clearable @change="channelChange" placeholder="請選擇渠道型別">
            <el-option :label="item.name" :value="item.value" v-for="item in chanelList" :key="item.value"></el-option>
          </el-select>
        </el-form-item>
        <el-form-item>
            <el-button class="search-btn el-button--infoSearch" icon="el-icon-search" @click="submitSearch()"></el-button>
            <el-button class="search-btn el-button--infoSearch" @click="clearListSearch">清空</el-button>
        </el-form-item>
        <el-form-item class="rBtn">
          <el-button type="primary" @click="createItem('new')">新建</el-button>
        </el-form-item>
    </el-form>
    <div class="clearFix"></div>
</div>

清空功能則是清空搜尋輸入框的內容,實際上也是重置整個頁面。區分是重新整理頁面還是不重新整理。不重新整理的話直接清空輸入的內容,重置的話直接走一遍列表初始化載入。

2.JS設定內容:搜尋和首次載入請求是一個介面,可以直接將引數合併起來,有搜尋輸入的內容就執行搜尋,無內容則載入預設內容。清空搜尋直接格式化表單。

data () {
            return {
                currentPage: 1,
                totalResult:0,
                chanelList: [
                  {
                    value: 0,
                    name: '線上'
                  },
                  {
                    value: 1,
                    name: '線下'
                  },
                  {
                    value: 2,
                    name: '集採'
                  }
                ],
                searchParams: {
                  remark: '',
                  chanelName: '',
                  chanelType: '',
                  pageSize: 10,
                  pageIndex: 0
                },
            }
        },
        created () {
          this.getList()
        },
        methods: {
            // 獲取列表資料 num(下同):取的挪車的原型 1-預設請求型別三方ID
            // 網點名稱 storeName ID cardId
            getList () {
                let method = 'GET'
                let url = `/etcMan/channelList`
                let dd = {
                        channelName: this.searchParams.chanelName || '',
                        channelType: this.searchParams.chanelType,
                        remarks: this.searchParams.remark || '',
                        pageIndex: this.searchParams.pageIndex || 0,
                        pageSize: this.searchParams.pageSize || 10
                    }
                this.axios({
                    url: url + devCode,
                    method: method,
                    baseURL: baseUrl,
                    params: dd
                })
                .then(res => {
                    res = res.data
                    this.tableData = res.data.pageListData ? res.data.pageListData : []
                    this.totalResult = res.data.totalResult
                })

            },
            // 搜尋列表 num(下同)
            submitSearch () {
              this.searchParams.pageIndex = 0
              this.getList()
              this.currentPage = 1
            },
            // 格式化表單資料
            clearForm () {
                this.searchParams = {
                    chanelName: '',
                    remark: '',
                    chanelType: '',
                    pageIndex: 0,
                    pageSize: 10
                }
            },
            // 清除列表的搜尋表單
            clearListSearch () {
                this.clearForm()
                this.getList()
            },

3.就是進行調測,對搜尋輸入的引數進行對應,在特定值的情況下 搜尋0或者別的值會被直接傳成空,所以這個時候就要考慮列表請求的引數不寫空,直接填進行搜尋的引數名字。這個引數有就傳沒有就不傳,避免出現為0或者別的值直接傳成空的了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。


IT145.com E-mail:sddin#qq.com