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

element-ui圖像組件、上傳組件以及分頁組件實現(xiàn)代碼

 更新時間:2024年02月01日 15:54:34   作者:須臾不敢忘  
工作中碰到需要多圖上傳,在使用element-ui解決過程中碰到一些問題,在這里分享給大家,這篇文章主要給大家介紹了關(guān)于element-ui圖像組件、上傳組件以及分頁組件實現(xiàn)的相關(guān)資料,需要的朋友可以參考下

一、圖像組件

< el-image>:保留了原生的img的屬性

<el-image
      style="width: 100px; height: 100px"
      :src="url"
      :fit="fit">
</el-image>
//1.src屬性:圖像的地址,綁定變量用來指定圖片的地址,通常需要使用require來拉取圖片
//2.fit屬性:確定圖片如何適應(yīng)到容器框('fill', 'contain', 'cover', 'none', 'scale-down')
//3.lazy屬性:圖片懶加載(按需加載)

二、導(dǎo)航菜單(NavMenu)

1、導(dǎo)航方向:通過mode屬性設(shè)置

2、菜單項

<el-menu mode="方向" background-color="背景色" text-color="文本顏色" 
         default-active="默認(rèn)打開的菜單" 
         active-text-color="活動的菜單的文本的顏色">
    <el-submenu index="1"> //菜單項
            <template slot="title">  //標(biāo)題文本
              <i class="el-icon-notebook-2"></i> //文本前的圖標(biāo)
              <span>在線教材</span>
            </template>
              <el-menu-item index="1-1"> //子菜單項
                <router-link to="/books" class="link">出版圖書</router-link>
              </el-menu-item>
              <el-menu-item index="1-2">教案管理</el-menu-item>
              <el-menu-item index="1-3">教材管理</el-menu-item>
   </el-submenu>
  //disabled屬性:表示該菜單項不可用

三、上傳組件:Upload

<el-upload
            class="avatar-uploader"
            style="margin-left: 30px;"
            drag
            action="http://localhost:8089/books/upload"
            :show-file-list="false"
            :on-change="handlePreview"
            :on-success="handleAvatarSuccess"
            :before-upload="beforeAvatarUpload"
            multiple >
          <img v-if="imageUrl" :src="imageUrl" class="avatar">
          <i class="el-icon-upload"></i>
          <div class="el-upload__text">將圖書圖片拖到此處,或<em>點擊上傳</em></div>
          <div class="el-upload__tip" slot="tip">只能上傳jpg/png文件,且不超過2M</div>
/el-upload>
 //1.drag屬性:表示是否啟用拖拽上傳 
 //2.action屬性:上傳服務(wù)器的地址
 //3.show-file-list:  是否顯示已上傳文件列表(true/false) 
 //4.data:上傳時是否需要附帶額外的參數(shù)
 //5.multiple:是否可以上傳多個文件
 //6.on-change事件:當(dāng)上傳文件的內(nèi)容發(fā)生改變時觸發(fā),
 //7.on-success事件:當(dāng)上傳成功后觸發(fā)   
 //8.before-upload事件:在上傳之前觸發(fā)(通常用于檢查上傳文件的格式、大小)  
對應(yīng)的代碼:
//before-upload事件的處理函數(shù):圖片上傳之前的驗證
    beforeAvatarUpload(file) {
      const isJPG = (file.type === 'image/jpeg'||'image/png');
      const isLt2M = file.size / 1024 / 1024 < 2;
      if (!isJPG) {
        this.$message.error('上傳頭像圖片只能是 JPG 格式!');
        this.imageUrl = ''
      }
      if (!isLt2M) {
        this.$message.error('上傳頭像圖片大小不能超過 2MB!');
        this.imageUrl = ''
      }
      return isJPG && isLt2M;
    },
    //on-change事件的處理函數(shù):顯示圖片
    handlePreview(file){
      console.log('#####:',file)
      this.imageUrl = URL.createObjectURL(file.raw)
    },
    //on-success事件觸發(fā)的函數(shù):圖片上傳成功后
    handleAvatarSuccess(res, file) {
      this.imageUrl = URL.createObjectURL(file.raw);
    },

示例:

(1)使用elementUI的上傳組件將圖片上傳到服務(wù)器并保存到數(shù)據(jù)庫中

(2)在el-table控件中將上傳的圖片顯示出來

實現(xiàn)過程:

(1)給數(shù)據(jù)庫中的數(shù)據(jù)表增加一列(image_url):保存圖片在服務(wù)器中存儲路徑

(2)在服務(wù)器端給BookModel增加一個屬性imageUrl,該屬性映射的是數(shù)據(jù)表中的image_url列

(3)在前端組件中使用FormData對數(shù)據(jù)進(jìn)行打包:將表單控件的值和el-upload組件的值

? A、在組件的data中增加變量:uploadImage存放用戶選擇的文件信息

  • let formData = new FormData()
  • formData.append('bookName',this.form.bookName)
  • formData.append('bookAuthor',this.form.bookAuthor)
  • formData.append('publishTime',this.form.publishTime)
  • formData.append('bookPrice', this.form.bookPrice)
  • formData.append('uploadImage', this.uploadImage)

? B、將formData提交給服務(wù)器端的接口

? (4)在后臺接口中使用formidable模塊來解析formData中的數(shù)據(jù)

? (5)將上傳到服務(wù)器端的圖片在客戶端的表格(el-table)中顯示出來

四、分頁組件

1、實現(xiàn)分頁的方式:

? (1)服務(wù)器端分頁:通過底層的數(shù)據(jù)庫來實現(xiàn),前端會頻繁的和服務(wù)器交互,客戶端每次請求的是分頁的數(shù)據(jù)而不是所有數(shù)據(jù)

? (2)前端分頁:一次性從數(shù)據(jù)庫中取出數(shù)據(jù)緩存起來,然后對緩存中的數(shù)據(jù)進(jìn)行分頁處理

2、實現(xiàn)分頁的要素:

? (1)總記錄數(shù)

? (2)每頁顯示的記錄數(shù)

? (3)需要的頁數(shù)

? (4)每頁數(shù)據(jù)的起始索引

3、element-ui的分頁組件:

 <el-pagination
      @size-change="handleSizeChange"
      @current-change="handleCurrentChange"
      :current-page="currentPage4"
      :page-sizes="[100, 200, 300, 400]"
      :page-size="100"
      layout="total, sizes, prev, pager, next, jumper"
      :total="400">
    </el-pagination>

//1.size-change事件:每頁顯示的記錄數(shù)發(fā)生改變時觸發(fā),會自動給事件處理函數(shù)傳遞一個參數(shù),參數(shù)值是新的每頁顯示的記錄數(shù)
//2.current-change事件:當(dāng)前的頁碼發(fā)生改變時觸發(fā),會自動給事件處理函數(shù)傳遞一個參數(shù),參數(shù)值是新的頁碼
//3.current-page屬性:當(dāng)前頁的頁碼
//4.page-sizes屬性:每頁顯示的記錄數(shù)的列表,屬性值是一個數(shù)組
//5.page-size屬性:當(dāng)前每頁顯示的記錄數(shù),屬性值是一個數(shù)字
//6.layout屬性:分頁組件的布局
//7.total屬性:總記錄數(shù)

總結(jié) 

到此這篇關(guān)于element-ui圖像組件、上傳組件以及分頁組件實現(xiàn)的文章就介紹到這了,更多相關(guān)element-ui圖像組件、上傳組件、分頁組件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入探討如何在Vue中使用EventBus實現(xiàn)組件間的高效通信

    深入探討如何在Vue中使用EventBus實現(xiàn)組件間的高效通信

    在現(xiàn)代前端開發(fā)中,Vue.js?作為一種流行的漸進(jìn)式框架,廣泛應(yīng)用于各類?Web?項目的構(gòu)建中,本文將深入探討如何在?Vue?中使用?EventBus,實現(xiàn)組件間的高效通信,需要的可以了解下
    2024-11-11
  • Vue3使用路由VueRouter4的簡單示例

    Vue3使用路由VueRouter4的簡單示例

    在vue.js項目中使用vue-router,可以使用路由進(jìn)行界面或路徑跳轉(zhuǎn),下面這篇文章主要給大家介紹了關(guān)于Vue3使用路由VueRouter4的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-07-07
  • 詳解vue3中組件的非兼容變更

    詳解vue3中組件的非兼容變更

    這篇文章主要介紹了詳解vue3中組件的非兼容變更,幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下
    2021-03-03
  • 在vue3項目中給頁面添加水印的實現(xiàn)方法

    在vue3項目中給頁面添加水印的實現(xiàn)方法

    這篇文章主要給大家介紹一下在vue3項目中添加水印的實現(xiàn)方法,文中有詳細(xì)的代碼示例供大家參考,具有一定的參考價值,感興趣的小伙伴跟著小編一起來看看吧
    2023-08-08
  • Vue.js結(jié)合SortableJS實現(xiàn)樹形數(shù)據(jù)拖拽

    Vue.js結(jié)合SortableJS實現(xiàn)樹形數(shù)據(jù)拖拽

    本文主要介紹了Vue.js結(jié)合SortableJS實現(xiàn)樹形數(shù)據(jù)拖拽,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • vue的index.html中獲取環(huán)境變量和業(yè)務(wù)判斷圖文詳解

    vue的index.html中獲取環(huán)境變量和業(yè)務(wù)判斷圖文詳解

    這篇文章主要給大家介紹了關(guān)于vue的index.html中獲取環(huán)境變量和業(yè)務(wù)判斷的相關(guān)資料,對vue來說index.html是一個總的入口文件,vue是單頁面應(yīng)用,掛在id為app的div下然后動態(tài)渲染路由模板,需要的朋友可以參考下
    2023-09-09
  • 一個Vue頁面的內(nèi)存泄露分析詳解

    一個Vue頁面的內(nèi)存泄露分析詳解

    這篇文章主要介紹了一個Vue頁面的內(nèi)存泄露分析詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • Vue常用指令V-model用法

    Vue常用指令V-model用法

    本篇文章主要介紹了Vue常用指令_V-model用法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • vue3使用mitt.js實現(xiàn)各種組件間的通信

    vue3使用mitt.js實現(xiàn)各種組件間的通信

    在vue工程中,除開vue自帶的什么父子間,祖孫間通信,還有一個非常方便的通信方式,類似Vue2.x?使用?EventBus?進(jìn)行組件通信,而?Vue3.x?推薦使用?mitt.js,可以實現(xiàn)各個組件間的通信,所以本文給大家介紹了vue3使用mitt.js實現(xiàn)組件通信,需要的朋友可以參考下
    2024-05-05
  • 詳解vue2.0的Element UI的表格table列時間戳格式化

    詳解vue2.0的Element UI的表格table列時間戳格式化

    本篇文章主要介紹了詳解vue2.0的Element UI的表格table列時間戳格式化,具有一定的參考價值,感興趣的小伙伴們可以參考一下。
    2017-06-06

最新評論