el-select 下拉分页

 //父组件

<newpageselect  

          ref="newpageselect"

          @getTypeList="getTypeList"

          @selectPageChange="selectPageChange"

          :diseaseTypelist="diseaseTypelist"

          :selectLabelkey="'dictLabel'"

          :selectvaluekey="'dictSort'"

          :selectvalue="form.diseaseTypeCode"

          :zdParameters="zdParameters">

          </newpageselect>

//引入组件

import newpageselect from '@/views/components/component/selectPage.vue';

components: {

    newpageselect,

  },

//新增修改  刷新数据

this.$nextTick(() => {

        this.$refs.newpageselect.getresult()

      })

//子组件

<template>

    <el-row>

      <el-col :span="24">

        <!-- <el-select v-model="selectVal" filterable clearable

         placeholder="请选择"  @change="changeValue"

         :style="'width:100%'"> -->

         <el-select v-model="selectVal" 

            filterable

            remote

            reserve-keyword

            placeholder="请输入关键词"

            :remote-method="remoteMethod"

            @change="changeValue"

            :style="'width:100%'">

          <el-option

            v-for="item in dataList"

            :key="item[selectvaluekey]"

            :label="item[selectLabelkey]"

            :value="item[selectvaluekey]"

            >

          </el-option>

          <el-col :span="24">

            <div class="bottomPage">

            <!-- //分页组件 //翻页改变方法  //pageNum页数,pageSize每页显示数量,total总数 -->

              <el-pagination

                @current-change="handleCurrentChange"

                :current-page="entityPageInfo.pageNum"

                :page-size="entityPageInfo.pageSize"

                layout="total, prev, pager, next"

                :total="entityPageInfo.total">

              </el-pagination>

            </div>

          </el-col>

        </el-select>

      </el-col>

    </el-row>

</template>

<script>

export default {

  name: "SelectPage",

  //接收参数

  props:{

    //参数

    zdParameters:{

      type:Object,

      require:''

    },

    //el-option label展示字段名

    selectLabelkey: {

      type: String,

      default: ''

    },

    //el-option label展示字段值

    selectvaluekey: {

      type: String,

      default: ''

    },

    //回显数据

    selectvalue: {

      type: String,

      default: ''

    },

    //结果集

    diseaseTypelist: {

      type: Array,

      default: () => {

        return [];

      }

    },

  },

  

  data() {

    return {

      selectVal:"",

      dataList:[],

      entityPageInfo:{},

      list: [],

      loading: false,

    };

  },

  mounted(){

  },

  methods:{

    // 列表

    getresult(){

       this.selectVal=this.selectvalue,

        this.dataList=this.diseaseTypelist,

        this.entityPageInfo=this.zdParameters,

        console.log(this.dataList,"===============dataList")

        console.log(this.zdParameters,"===============entityPageInfo")

        console.log(this.selectvalue,"===============selectvalue")

    },

    //翻页

    handleCurrentChange(val) {

     //val获取点击页数,赋值刷新接口数据

      this.entityPageInfo.pageNum = val

    //   this.getList()

      this.$emit('getTypeList',this.entityPageInfo);

    },

    changeValue(e){

      this.selectVal = e

      //e获取选择code 给父页面

      this.$emit('selectPageChange',e);

    },

    remoteMethod(value) {

        console.log(value,"==11=======")

      this.entityPageInfo.keywords = value

      this.$emit('getTypeList',this.entityPageInfo);

    },

  }

};

</script>

<style scoped>

.bottomPage{display: flex;margin-bottom: 10px;padding: 0px 5px;}

</style>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值