最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

教你修改element-ui源碼給el-dialog添加全屏功能

 更新時(shí)間:2022年11月18日 10:11:46   作者:MINO吖  
el-dialog組件提供了fullscreen功能,但是無法滿足業(yè)務(wù)需求。系統(tǒng)使用了許多dialog,不方便重新封裝dialog組件,故直接對源碼進(jìn)行修改,這篇文章主要介紹了修改element-ui源碼給el-dialog添加全屏功能,需要的朋友可以參考下

背景:

el-dialog組件提供了fullscreen功能,但是無法滿足業(yè)務(wù)需求。系統(tǒng)使用了許多dialog,不方便重新封裝dialog組件,故直接對源碼進(jìn)行修改。

1.克隆element官方的倉庫到本地

git clone https://github.com/ElemeFE/element

2.下載到本地之后進(jìn)入項(xiàng)目,安裝依賴包

cd elementnpm install

3.打開package 文件夾,修改源代碼

打開 package/dialog/src/component.vue

template:

<!-- div role="dialog" 的class修改為:-->
:class="['el-dialog', { 'is-fullscreen': isFullscreen, 'el-dialog--center': center }, customClass]"
 
<!-- 在button aria-label="Close"前添加按鈕: -->
<button type="button" class="el-dialog__headerbtn" aria-label="Fullscreen" style="right: 46px;" v-if="fullscreen" @click="handleFullscreen">
     <i class="el-dialog__close el-icon el-icon-full-screen"></i>
</button>

script: 

props: {
    ...,
    fullscreen:  { // 修改fullscreen屬性,默認(rèn)為true
       type: Boolean,
       default: true,
    },
    ...
}
data() {
    return {
        isFullscreen: false, // 新增全屏狀態(tài)
        ...
    };
},
computed: {
    style() {
        let style = {};
        if (!this.isFullscreen) { // 判斷isFullscreen
            style.marginTop = this.top;
            if (this.width) {
                style.width = this.width;
            }
        }
        return style;
    },
},
methods: {
    // 新增toggle方法
    handleFullscreen() {
        this.isFullscreen = !this.isFullscreen;
    },
    ...
}

4.打包我們修改后的源碼

npm run dist

此時(shí)會(huì)發(fā)現(xiàn)在根目錄生成了一份 lib 文件夾(后續(xù)會(huì)用到)

5.安裝 patch-package

npm i patch-package --save-dev

6.替換項(xiàng)目中的 element-ui

首先我們找到 node_modules/element-ui/ 刪除目錄下的 lib 文件夾

拷貝我們剛才生成的一份 lib 文件夾到 node_modules/element-ui/ 下面

7.生成 patches 補(bǔ)丁文件

npx patch-package package-name

執(zhí)行之后會(huì)發(fā)現(xiàn) 在根目錄生成一個(gè) patches/element-ui+2.15.6.patch 的文件

8.新增 postinstall 命令

在 package.json scripts 配置 "postinstall": "patch-package"

9.重新安裝依賴包

刪除你的 node_modules文件夾

npm install 重新安裝依賴 重啟項(xiàng)目

參考

相關(guān)文章

  • Javascript 解疑

    Javascript 解疑

    Javascript 解疑,需要的朋友可以參考下。
    2009-11-11
  • Javascript使用post方法提交數(shù)據(jù)實(shí)例

    Javascript使用post方法提交數(shù)據(jù)實(shí)例

    這篇文章主要介紹了Javascript使用post方法提交數(shù)據(jù),實(shí)例分析了javascript實(shí)現(xiàn)post提交數(shù)據(jù)的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • 詳談ES6中的迭代器(Iterator)和生成器(Generator)

    詳談ES6中的迭代器(Iterator)和生成器(Generator)

    下面小編就為大家?guī)硪黄斦凟S6中的迭代器(Iterator)和生成器(Generator)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-07-07
  • JavaScript獲取頁面上被選中文字的方法技巧

    JavaScript獲取頁面上被選中文字的方法技巧

    這篇文章主要介紹了JavaScript獲取頁面上被選中文字的方法技巧,本文直接給出實(shí)現(xiàn)代碼和運(yùn)行效果,需要的朋友可以參考下
    2015-03-03
  • JS中取二維數(shù)組中最大值的方法匯總

    JS中取二維數(shù)組中最大值的方法匯總

    本文通過三種解決方案給大家介紹js中取二維數(shù)組中最大值的方法。介紹的非常詳細(xì),具有參考價(jià)值
    2016-04-04
  • three.js創(chuàng)造時(shí)空裂縫特效實(shí)現(xiàn)示例

    three.js創(chuàng)造時(shí)空裂縫特效實(shí)現(xiàn)示例

    這篇文章主要為大家介紹了three.js創(chuàng)造時(shí)空裂縫特效實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • js url傳值中文亂碼之解決之道

    js url傳值中文亂碼之解決之道

    因?yàn)閖s url在傳值的過程中使用的是js自己默認(rèn)的字符集編碼規(guī)則,我們必須把它轉(zhuǎn)成屬于我們自己的編碼規(guī)格
    2009-11-11
  • js阻止默認(rèn)右鍵的下拉菜單方法

    js阻止默認(rèn)右鍵的下拉菜單方法

    下面小編就為大家分享一篇js阻止默認(rèn)右鍵的下拉菜單方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • js對象的復(fù)制繼承實(shí)例

    js對象的復(fù)制繼承實(shí)例

    這篇文章主要介紹了js對象的復(fù)制繼承用法,以一個(gè)較為簡單的實(shí)例分析了js對象復(fù)制繼承的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01
  • JS逆向之?webpack?打包站點(diǎn)實(shí)戰(zhàn)原理分享

    JS逆向之?webpack?打包站點(diǎn)實(shí)戰(zhàn)原理分享

    本文主要介紹了JS逆向之webpack打包站點(diǎn)實(shí)戰(zhàn)原理分享,webpack是前端程序員用來進(jìn)行打包JS的技術(shù),打包之后的代碼特征非常明顯,更多相關(guān)知識(shí)需要的小伙伴可以參考下面文章詳細(xì)內(nèi)容
    2022-06-06

最新評論

凤台县| 九江县| 老河口市| 高密市| 连平县| 丹棱县| 二连浩特市| 凤凰县| 徐汇区| 武隆县| 拉萨市| 临高县| 永丰县| 襄汾县| 富源县| 黔南| 枣阳市| 绥滨县| 临海市| 从江县| 武川县| 宣恩县| 来凤县| 若尔盖县| 图片| 永安市| 荥阳市| 宣威市| 美姑县| 天长市| 深州市| 天等县| 安西县| 肥城市| 福泉市| 慈利县| 岳普湖县| 合江县| 湾仔区| 辽宁省| 钦州市|