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

printJS打印問題匯總以及解決辦法

 更新時(shí)間:2024年05月07日 09:03:32   作者:小張快跑。  
Print.js一個(gè)小的javascript庫,可幫助您從網(wǎng)絡(luò)上打印,這篇文章主要給大家介紹了關(guān)于printJS打印問題匯總以及解決辦法的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考下

一、打印預(yù)覽表格列不全(Element的el-table組件)

 問題描述:當(dāng)我在頁面中集成了<el-table></el-table>這個(gè)組件的時(shí)候,由于我的列比較多,所以在打印預(yù)覽的時(shí)候,我的表格列出現(xiàn)了顯示不完全的問題,百度了很多方法,最后總結(jié)了兩個(gè)比較簡單的解決方案:

1、打印設(shè)置“打印縮放”

由于我們是基于printJS來實(shí)現(xiàn)的打印功能,在這個(gè)打印插件的“縮放”按鈕,將頁面縮放到合適大小即可。

2、修改el——table的底層代碼(如果頁面上有多個(gè)表格慎用) 

問題原因:table-layout: fixed導(dǎo)致的,出現(xiàn)部分列沒有被打印

  分析問題

        為了讓表table布局更加符合預(yù)期,普通使用table時(shí),其table-layout 默認(rèn)值是 auto,導(dǎo)致表格第二行和第一行不一樣寬,也就是兩行的寬度不對(duì)齊。

        而使用:table { table-layout: fixed; }則會(huì)讓表的布局以第一行為準(zhǔn),設(shè)置表格的寬度,然后其他行的表格寬度就按照第一行為準(zhǔn)。一般表格第一行是表頭標(biāo)題,第二行以后是數(shù)據(jù)行,也就是讓數(shù)據(jù)行的每列寬度向第一行列寬度看齊。

        這種樣式的表格布局在性能上也快得多,這是因?yàn)檎麄€(gè)表格的內(nèi)容不需要花費(fèi)進(jìn)行分析,以便知道列的寬度。

        解決方法:在組件中重設(shè)el-table的寬度(要注意的是:這種解決方案只適用于頁面中表格不是很多的情況,如果表格很多,可以給要修改的表格加一個(gè)id)

<style lang="less" scoped>
    /deep/ table{
        table-layout: auto !important;
    }
    /deep/ .el-table__header-wrapper .el-table__header{
        width: 100% !important;
    }
    /deep/ .el-table__body-wrapper .el-table__body{
        width: 100% !important;
    }
</style>

注意點(diǎn):

/deep/ table{
  table-layout: auto !important;
}

可能會(huì)造成樣式錯(cuò)亂,比如你頁面有table,打印彈出層的table,這樣修改樣式有可能會(huì)導(dǎo)致頁面表格行錯(cuò)位,解決辦法:在頁面的<el-table>標(biāo)簽上加id,比如pagetable,修改less樣式如下

<style lang="less" scoped>
    /deep/ table{
        table-layout: auto !important;
    }
    /deep/ .el-table__header-wrapper .el-table__header{
        width: 100% !important;
    }
    /deep/ .el-table__body-wrapper .el-table__body{
        width: 100% !important;
    }
    /deep/ #pagetable table{
        table-layout: fixed !important;
    }
</style>

二、如何解決vue printjs 打印側(cè)邊頁面缺失

如果使用 Vue.js 和 Print.js 打印頁面時(shí)出現(xiàn)了側(cè)邊頁面缺失的情況,可以嘗試以下解決方案:

  • 設(shè)置打印區(qū)域大小

在使用 Print.js 打印時(shí),可以通過 options 參數(shù)中的 cssStyle 屬性來設(shè)置打印區(qū)域的大小,例如:

this.$printJS({
  printable: 'my-printable-element-id',
  cssStyle: 'width: 1000px; height: 1000px;',
  // ...
});

將打印區(qū)域的大小設(shè)置得足夠大,以便容納所有內(nèi)容。

  • 隱藏不必要的元素

如果打印區(qū)域內(nèi)包含了一些不必要的元素,可以通過在打印時(shí)將它們隱藏來避免打印缺失的問題。例如:

this.$printJS({
  printable: 'my-printable-element-id',
  onPrintDialogClose: function() {
    // 隱藏不必要的元素
    document.getElementById('my-unwanted-element-id').style.display = 'none';
  },
  // ...
});

在打印對(duì)話框關(guān)閉時(shí),將不必要的元素隱藏即可。

  • 使用插件

除了 Print.js 之外,還有一些其他的 Vue.js 打印插件,例如 vue-print-nb、vue-html-to-paper 等,它們能夠更好地解決打印頁面缺失的問題??梢試L試使用這些插件來解決問題。

總結(jié) 

到此這篇關(guān)于printJS打印問題匯總以及解決辦法的文章就介紹到這了,更多相關(guān)printJS打印問題內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 前端vue實(shí)現(xiàn)的h5頁面接入微信支付流程(jsapi方式)

    前端vue實(shí)現(xiàn)的h5頁面接入微信支付流程(jsapi方式)

    vue實(shí)現(xiàn)微信支付有三種方式,第一種方式是PC端支付,第二種方式是H5支付,第三種方式是微信公眾號(hào)支付,這篇文章主要給大家介紹了關(guān)于前端vue實(shí)現(xiàn)的h5頁面接入微信支付流程,文中介紹的方法是利用jsapi方式,通過代碼將實(shí)現(xiàn)的方法介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01
  • Vue.js每天必學(xué)之過渡與動(dòng)畫

    Vue.js每天必學(xué)之過渡與動(dòng)畫

    Vue.js每天必學(xué)之過渡與動(dòng)畫,對(duì)Vue.js過渡與動(dòng)畫進(jìn)行深入學(xué)習(xí),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • vue實(shí)現(xiàn)表格數(shù)據(jù)的增刪改查

    vue實(shí)現(xiàn)表格數(shù)據(jù)的增刪改查

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)表格數(shù)據(jù)的增刪改查,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • vue中使用swiper5方式

    vue中使用swiper5方式

    這篇文章主要介紹了vue中使用swiper5方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue 動(dòng)態(tài)生成拓?fù)鋱D的示例

    vue 動(dòng)態(tài)生成拓?fù)鋱D的示例

    這篇文章主要介紹了vue 動(dòng)態(tài)生成拓?fù)鋱D的示例,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2021-01-01
  • Vue中路由守衛(wèi)的具體使用

    Vue中路由守衛(wèi)的具體使用

    導(dǎo)航守衛(wèi)就是路由跳轉(zhuǎn)前、中、后過程中的一些鉤子函數(shù),本文詳細(xì)的介紹了Vue中路由守衛(wèi)的具體使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2021-12-12
  • Vue+element使用row-class-name修改el-table某一行解決背景色無效的方法

    Vue+element使用row-class-name修改el-table某一行解決背景色無效的方法

    本文主要介紹了Vue+element使用row-class-name修改el-table某一行解決背景色無效的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • vue通過v-show實(shí)現(xiàn)回到頂部top效果

    vue通過v-show實(shí)現(xiàn)回到頂部top效果

    這篇文章主要介紹了vue通過v-show實(shí)現(xiàn)回到頂部top效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • VUE項(xiàng)目初建和常見問題總結(jié)

    VUE項(xiàng)目初建和常見問題總結(jié)

    在本篇文章里小編給大家整理的是關(guān)于VUE 項(xiàng)目初建和常見問題以及相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們學(xué)習(xí)下。
    2019-09-09
  • vue使用router-view調(diào)用頁面方式

    vue使用router-view調(diào)用頁面方式

    這篇文章主要介紹了vue使用router-view調(diào)用頁面方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03

最新評(píng)論

托克托县| 新宁县| 秦皇岛市| 客服| 鲁山县| 大方县| 洛南县| 宝坻区| 伊金霍洛旗| 沛县| 东乌珠穆沁旗| 关岭| 兴海县| 郧西县| 桐城市| 馆陶县| 大邑县| 乌海市| 雅安市| 泽州县| 武平县| 巴塘县| 循化| 囊谦县| 洛阳市| 故城县| 政和县| 江口县| 嘉峪关市| 卢湾区| 甘南县| 奉化市| 灵宝市| 洪雅县| 大邑县| 芜湖县| 阿巴嘎旗| 建阳市| 绍兴市| 务川| 来凤县|