国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

在 Vue 中更優(yōu)雅的封裝第三方組件

開(kāi)發(fā)
實(shí)際開(kāi)發(fā)的時(shí)候,為了減少重復(fù)造輪子,提高工作效率,節(jié)省開(kāi)發(fā)時(shí)間成本, 免不了會(huì)使用ui組件庫(kù)。

一、需求場(chǎng)景描述

實(shí)際開(kāi)發(fā)的時(shí)候,為了減少重復(fù)造輪子,提高工作效率,節(jié)省開(kāi)發(fā)時(shí)間成本, 免不了會(huì)使用ui組件庫(kù),比如在web前端很受歡迎的element-ui。但有的時(shí)候,我們需要在原組件的基礎(chǔ)上做些改造,比如一個(gè)image組件, 我們需要統(tǒng)一在圖片加載失敗的時(shí)候展示的特定圖,每次使用組件都加一遍, 麻煩耗時(shí),關(guān)鍵是維護(hù)成本高,當(dāng)需要更新這個(gè)加載出錯(cuò)的圖片時(shí), 得再次一個(gè)個(gè)去找到使用該組件的地方修改。

再例如自定義分頁(yè)組件也很常見(jiàn),組件的樣式,默認(rèn)支持的每頁(yè)數(shù)目, 封裝之后再用,在可維護(hù)性和開(kāi)發(fā)效率上都很有好處。

然而也不至于從0開(kāi)始寫一個(gè)分頁(yè)組件,在原有基礎(chǔ)上封裝就好, 那么如何快速優(yōu)雅的封裝一個(gè)第三方組件庫(kù)的組件呢?v-bind="attrs"和v?on="attrs" 和 v-on="attrs"和v?on="listeners" ="$listeners",會(huì)給我們帶來(lái)驚喜。它們可以使得封裝后的組件, “繼承”原組件的幾乎所有 v-bind 屬性和 v-on 事件,且用法和作用與在原組件一樣。

封裝el-image 為 custom-image 組件,所有使用custom-image 展示圖片的地方, 圖片加載過(guò)程中都會(huì)統(tǒng)一展示“加載中...”的提示,且當(dāng)加載出錯(cuò)時(shí),會(huì)展示統(tǒng)一的默認(rèn)圖。下面是一個(gè) custom-image 組件加載過(guò)程以及加載出錯(cuò)的效果。

GIF 2022-4-15 15-58-13.gif

二、關(guān)鍵技術(shù)點(diǎn)介紹

1.v-bind="$attrs"

v-bind="$attrs"的妙用是在創(chuàng)建更高級(jí)別的組件,在封裝第三方組件時(shí),

可以自動(dòng)將在父作用域中使用的v-bind的屬性自動(dòng)綁定,

并向下傳入被封裝的使用了v-bind="$attrs"的組件。

一段摘自 vue 官網(wǎng)的介紹

包含了父作用域中不作為 prop 被識(shí)別 (且獲取) 的 attribute

綁定 (class 和 style 除外)。當(dāng)一個(gè)組件沒(méi)有聲明任何 prop 時(shí),

這里會(huì)包含所有父作用域的綁定 (class 和 style 除外),

并且可以通過(guò) v-bind="$attrs" 傳入內(nèi)部組件——在創(chuàng)建高級(jí)別的組件時(shí)非常有用。

例如我們封裝的custom-Image組件,使用了v-bind="$attrs"之后, 我們?cè)赾ustom-Image組件中,也擁有了el-image的幾乎所有屬性, 而且其作用效果和用法,是和我們使用el-image是一樣的, 也就說(shuō)我們可以看著el-image的文章去使用custom-Image。

2.v-on="$listeners"

v-on="listeners"的作用和用法與v?bind="listeners"的作用和用法與v-bind="listeners"的作用和用法與v?bind="attrs"類似, 它可以將父作用域中的使用v-on的時(shí)間監(jiān)聽(tīng)器向下傳入到使用了v-on="listeners"組件中,和v?bind="listeners"組件中, 和v-bind="listeners"組件中,和v?bind="attrs"的功效類似,只不過(guò)一個(gè)屬性一個(gè)是事件。還是custom-Image組件為例, 這時(shí)候custom-Image組件就擁有了el-image組件的幾乎所有事件。而且其作用效果和用法,是和我們使用el-image是一樣的。

包含了父作用域中的 (不含 .native 修飾器的) v-on 事件監(jiān)聽(tīng)器。

它可以通過(guò) v-on="$listeners" 傳入內(nèi)部組件——在創(chuàng)建更高層次的組件時(shí)非常有用。

一段摘自 vue 官網(wǎng)的介紹

三、封裝el-image的代碼示例

使用custom-Image組件的示例

<custom-Image fit="fill" class="icon-img" :src="picPreview(expert)"></custom-Image>

封裝el-image為custom-Image組件的示例

<template>
<div id="CustomImage">
<el-image v-bind="$attrs" v-on="$listeners">
<div slot="error" class="image-slot">
<img :src="require('image-f/icon-empty-img.png')" alt="圖片加載失敗.png"/>
</div>
<div slot="placeholder" class="placeholder-slot">加載中...</div>
</el-image>
</div>
</template>

<script>
export default {
name: 'CustomImage'
}
</script>

<style scoped lang="scss">
#CustomImage {
.image-slot {
text-align: center;
}

.placeholder-slot {
text-align: center;
}
}
</style>
責(zé)任編輯:張燕妮 來(lái)源: 高級(jí)前端進(jìn)階
相關(guān)推薦

2023-07-11 08:12:49

OkHttp工具網(wǎng)絡(luò)

2017-05-16 13:24:02

LinuxCentOS第三方倉(cāng)庫(kù)

2017-12-11 15:53:56

2021-03-03 09:42:26

鴻蒙HarmonyOS圖片裁剪

2015-11-05 16:44:37

第三方登陸android源碼

2024-04-03 12:57:29

2011-07-25 14:14:49

iPhone SQLITE Pldatabase

2021-03-10 15:03:40

鴻蒙HarmonyOS應(yīng)用

2021-04-29 14:32:24

鴻蒙HarmonyOS應(yīng)用

2021-03-12 16:35:33

鴻蒙HarmonyOS應(yīng)用

2021-03-24 09:30:49

鴻蒙HarmonyOS應(yīng)用

2021-04-09 16:13:10

HooksReact架構(gòu)

2021-08-03 10:07:41

鴻蒙HarmonyOS應(yīng)用

2021-03-01 14:00:11

鴻蒙HarmonyOS應(yīng)用

2022-01-14 09:57:14

鴻蒙HarmonyOS應(yīng)用

2011-10-08 14:37:59

漏洞

2019-07-30 11:35:54

AndroidRetrofit庫(kù)

2014-07-23 08:55:42

iOSFMDB

2021-01-27 10:04:46

鴻蒙HarmonyOS動(dòng)畫

2013-08-14 09:50:32

iOS類庫(kù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

日本福利一区| 久久国产三级| 国产欧美视频一区二区| 亚洲永久一区二区三区在线| 亚洲欧美色图| 国产精品久久久久久久久男| 色综合一区二区日本韩国亚洲| 欧美亚洲动漫精品| 777.av| 91亚洲国产成人精品一区二三| 亚洲欧洲久久| 蜜桃视频在线观看一区二区| 日韩精品电影网站| 久久中文字幕一区二区三区| 久久伊人资源站| 久久久久综合| 免费在线观看91| 亚洲激情在线| 成人18视频| 亚洲午夜视频| 久久久久久亚洲精品不卡4k岛国 | 国产午夜视频| 国产精品素人一区二区| 999精品网站| 国产婷婷一区二区| 在线看的黄色网址| 国产精品久99| 成人高清在线观看免费| 亚洲线精品一区二区三区| 嫩草影院发布页| 亚洲图片欧美一区| 黄色av免费在线观看| 日韩欧美综合在线视频| 国产在线观看黄| 日韩欧美一级二级三级| 都市激情亚洲综合| 日韩在线观看网站| 色橹橹欧美在线观看视频高清| 国产精品久久久久久久久久ktv | 日韩精品日韩在线观看| av小说在线播放| 在线看国产精品| 亚洲精品一二三**| 免费不卡av| 欧美精品一区二区精品网| 伊人久久综合一区二区| 久久精品99久久香蕉国产色戒| 欧美日韩一区二区三区在线电影| 91香蕉亚洲精品| 蜜臀av一区二区三区| 精品国产免费av| 五月天激情综合| 中文字幕有码在线视频| 日韩在线观看成人| 成人3d精品动漫精品一二三| 日韩和欧美的一区二区| 91老司机福利 在线| 在线观看免费观看在线91| 欧美一区二区免费| 欧美影院精品| 成人在线精品视频| 国产精品羞羞答答xxdd | 免费在线观看精品| 538在线视频观看| 欧美午夜免费电影| 国产精品麻豆成人av电影艾秋| 国产精品久久久久久久久久99| 男女精品网站| 天堂中文字幕一二区| 欧美综合亚洲图片综合区| 韩国精品视频在线观看 | 国产精品果冻传媒潘| 激情综合色综合久久| 人人干人人干人人| 91精品国产综合久久婷婷香蕉 | 免费av一区二区三区四区| 欧美激情论坛| 国产欧美一区二区精品忘忧草| 自拍视频在线免费观看| 欧美另类xxx| 久久久久久夜| 最大av网站| 亚洲色图17p| 欧美三区美女| 亚洲成人av免费看| 亚洲精品99久久久久中文字幕| 免费视频一区三区| 99精品人妻少妇一区二区| 91精品国产综合久久久久久漫画| 美国成人xxx| www.av片| 亚洲成色777777在线观看影院| 婷婷成人在线| 日韩精品xxxx| 亚洲精品电影在线观看| 99热精品久久| 欧美综合视频在线观看| 一区二区成人网| 精品国产亚洲一区二区三区在线观看| 日本亚洲不卡| 97国产精东麻豆人妻电影| 欧美色视频在线观看| 美日韩中文字幕| 黄色高清无遮挡| 精品一区电影国产| 久久精品天堂| 国产在线视频网| 国产成人一区二区三区| 成+人+亚洲+综合天堂| 波多野结衣乳巨码无在线观看| 成人羞羞视频免费| 精品成人在线视频| 天天做夜夜做人人爱精品| 国产无限制自拍| 日韩av一区在线观看| 日韩一级欧洲| 免费在线观看一级毛片| 国产精品美乳一区二区免费| 中文字幕色av一区二区三区| 亚洲伦理网站| 91猫先生在线| 久久精品国产精品| 99久久精品国产导航| 樱花草涩涩www在线播放| 欧美自拍资源在线| 欧洲av一区二区嗯嗯嗯啊| 真实国产乱子伦精品一区二区三区| 男女午夜视频在线观看| 久久精品成人| 视频一区视频二区视频三区高| 欧美日韩在线一区| 影视一区二区| 97在线观看免费观看高清| 亚洲最大av网| 欧美日韩综合视频| 国产一区不卡| 在线天堂日本| 国产精品日韩欧美综合| 亚洲成在线观看| 精品大片一区二区| 天堂a中文在线| 亚洲综合在线中文字幕| 色综合一区二区| 欧美区一区二| 男男激情在线| 欧美日韩最好看的视频| 亚洲国产精品久久久久| 国产乱码字幕精品高清av | 一本一道久久a久久精品综合| 日韩精品极品在线观看播放免费视频| 丝袜美腿一区二区三区| 亚洲欧洲高清| 免费激情视频在线观看| 日韩av男人的天堂| 欧美性猛交xxxxxxxx| 欧美三级第一页| √8天堂资源地址中文在线| a级黄色小视频| 韩国精品美女www爽爽爽视频| 亚洲成人精品一区| 午夜一区二区三区不卡视频| 欧美大片高清| 精品女同一区二区| 日本午夜免费一区二区| 国产bdsm| 欧洲一区二区日韩在线视频观看免费 | 国产福利片在线观看| 国产手机免费视频| 欧美激情一区二区三级高清视频 | 日韩在线xxx| 国产日韩在线看| 日韩一区二区三区视频| 国产丶欧美丶日本不卡视频| 国产精品调教视频| 国产一区二区三区不卡在线| 中文字幕在线亚洲三区| 欧美成人性生活| 一本大道久久a久久综合| 精品亚洲欧美一区| 97久久精品| seseavlu视频在线| 一二三四视频社区在线| 成人做爽爽免费视频| 日韩精品黄色网| 亚洲黄色小说网站| 黄色三级电影网站| 日韩毛片在线观看| 亚洲激情网站免费观看| 亚洲欧美日本日韩| 亚洲午夜免费| 麻豆av在线导航| 日韩免费高清在线| 国内一区在线| 久久免费国产精品1| 91麻豆精品国产91久久久久久 | 亚洲欧洲日夜超级视频| 57pao成人永久免费视频| 欧美一级日韩一级| 亚洲视频香蕉人妖| 国模娜娜一区二区三区|