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

vue+iview分頁組件的封裝

 更新時間:2020年11月17日 11:56:48   作者:wangjinsheng593  
這篇文章主要為大家詳細介紹了vue+iview分頁組件的封裝,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

vue+iview的分頁組件封裝

1.在components中創(chuàng)建pagination文件夾,接著創(chuàng)建src,index.js,index.less文件

2.index.less文件

//需要修改的樣式
.ivu-page-options {
 margin-left: 10px;

 .ivu-page-options-sizer {
  margin-right: 0;
 }
 }

3.index.js文件

import "./index.less";
import component from "./src/main";

/* istanbul ignore next */
component.install = function (Vue) {
 Vue.component(component.name, component);
};

export default component;

4.src文件夾中的main.vue

<template>
 <!-- 分頁組件 -->
 <Page
 class="saas-pagination"
 ref="page"
 :loading="loading"
 :disabled="disabled"
 :total="total"
 :show-sizer="sizer"
 :show-elevator="elevator"
 :current="params.page"
 :page-size="params.rows"
 :page-size-opts="sizeOpts"
 @on-change="currentChange"
 @on-page-size-change="pageChange"/>
</template>

<script>
export default {
 props: {
 loading: {
  type: Boolean,
  default: false
 },
 total: {
  // 數(shù)據總數(shù)
  type: [String, Number],
  default: 0
 },
 page: {
  // 當前分頁
  type: [String, Number],
  default: 1
 },
 rows: {
  // 每頁顯示多少條
  type: [String, Number],
  default: 10
 },
 disabled: {
  type: Boolean,
  default: false
 },
 sizer: {
  // 是否顯示下拉組件
  type: Boolean,
  default: false
 },
 elevator: {
  // 是否顯示跳轉輸入框
  type: Boolean,
  default: false
 }
 },
 watch: {
 page (to) {
  this.params.page = to;
 },

 rows (to) {
  this.params.rows = to;
 }
 },
 data () {
 return {
  sizeOpts: [10, 20, 30, 40, 50, 60, 70, 80, 90, 100],
  params: {
  page: 1,
  rows: 10
  }
 }
 },
 methods: {
 // 分頁改變
 currentChange (current) {
  this.params.page = current;
  this.onChange();
 },
 // 每頁顯示條數(shù)改變
 pageChange (rows) {
  this.params.page = 1;
  this.params.rows = rows;
  this.onChange();
 },

 onChange () {
  this.$emit("on-change", JSON.parse(JSON.stringify(this.params)));
 },

 reset () {
  this.params = {
  page: 1,
  rows: 10
  }
  this.onChange();
  // 當前頁碼還原
  // this.$refs.page.currentPage = 1;
 }
 }
}
</script>

5.在components中創(chuàng)建index.js,用于全局引入

import GlobalPage from "@/components/pagination/index.js";
export default (Vue) => {
 Vue.component("GlobalPage ", GlobalPage );
}

6然后在全局的main.js引入,可全局使用

import components from "@/components/index.js";
Vue.use(components)

7.組件的使用

<template>
 <div>
  <global-page 
  ref="pagination"
  :sizer="true"
  :page="formData.page"
  :rows="formData.rows"
  :total="total"
  @on-change="pageChange">
  </global-page>
 </div>
</template>
<script>
export default {
 data(){
 return {
  total: 0, // 數(shù)據總數(shù)
  queryForm:{},
  formData: {
   page: 1,
   rows: 10,
  }
  }
 },
 methods: {
  // 分頁切換
 pageChange (params) {
  this.queryForm.page = params.page
  this.queryForm.rows = params.rows
  //查詢數(shù)據的方法
  this.search(this.queryForm)
 },
 }
}

</script>

關于vue.js組件的教程,請大家點擊專題vue.js組件學習教程進行學習。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • Vue + element實現(xiàn)動態(tài)顯示后臺數(shù)據到options的操作方法

    Vue + element實現(xiàn)動態(tài)顯示后臺數(shù)據到options的操作方法

    最近遇到一個需求需要實現(xiàn)selector選擇器中選項值options 數(shù)據的動態(tài)顯示,而非寫死的數(shù)據,本文通過實例代碼給大家分享實現(xiàn)方法,感興趣的朋友一起看看吧
    2021-07-07
  • vue3項目中使用three.js的操作步驟

    vue3項目中使用three.js的操作步驟

    最近在學習Three.js相關的技術,恰逢Vue 3.0正式版也已推出,下面這篇文章主要給大家介紹了關于vue3項目中使用three.js的操作步驟,文中通過圖文以及實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-01-01
  • Vue中textarea自適應高度方案的實現(xiàn)

    Vue中textarea自適應高度方案的實現(xiàn)

    本文主要介紹了Vue中textarea自適應高度方案的實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • 詳解Vue3中如何使用動態(tài)組件

    詳解Vue3中如何使用動態(tài)組件

    在?Vue?3?中,動態(tài)組件是一種允許在運行時動態(tài)切換組件的機制,本文主要為大家詳細介紹了動態(tài)組件在Vue3中的具體使用,感興趣的小伙伴可以了解下
    2024-01-01
  • vue-router的鉤子函數(shù)用法實例分析

    vue-router的鉤子函數(shù)用法實例分析

    這篇文章主要介紹了vue-router的鉤子函數(shù)用法,結合實例形式分析了vue路由鉤子分類及vue-router鉤子函數(shù)相關使用技巧,需要的朋友可以參考下
    2019-10-10
  • vue監(jiān)聽對象及對象屬性問題

    vue監(jiān)聽對象及對象屬性問題

    這篇文章主要介紹了vue監(jiān)聽對象及對象屬性問題,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-08-08
  • Vue中.vue文件比main.js先執(zhí)行的問題及解決

    Vue中.vue文件比main.js先執(zhí)行的問題及解決

    這篇文章主要介紹了Vue中.vue文件比main.js先執(zhí)行的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Vue發(fā)布項目實例講解

    Vue發(fā)布項目實例講解

    在本篇文章里小編給各位分享的是關于Vue發(fā)布項目的實例內容以及知識點講解,需要的朋友們參考下。
    2019-07-07
  • Vue 組件(component)教程之實現(xiàn)精美的日歷方法示例

    Vue 組件(component)教程之實現(xiàn)精美的日歷方法示例

    組件是我們學習vue必須會的一部分,下面這篇文章主要給大家介紹了關于Vue 組件(component)教程之實現(xiàn)精美的日歷的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2018-01-01
  • Vue3封裝全局Dialog組件的實現(xiàn)方法

    Vue3封裝全局Dialog組件的實現(xiàn)方法

    3封裝全局Dialog組件相信大家都不陌生,下面這篇文章主要給大家介紹了關于Vue3封裝全局Dialog組件的實現(xiàn)方法,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-06-06

最新評論