有没有大佬用过exceljs + x-spreadsheet 这个怎么固定表头呢 ?

有没有大佬用过exceljs + x-spreadsheet 这个怎么固定表头呢

const options = {
         "viewLocalImage":JM_VIEW_IMG_URL,//预览本地图片方法
         domain:baseFull,
         rpBar: true,
         showToolbar:false ,     //头部操作按钮
         showGrid: false,        //excel表格
         showContextmenu: false, //右键操作按钮
         readOnly:true,
         view: {
             height: () => {
                 let queryArea = document.querySelector('.jm-query-collapse')
                 let restHeight = 40
                 if(queryArea){
                     restHeight+=queryArea.scrollHeight+2;
                 }
                 return document.documentElement.clientHeight - restHeight;
             },
             width: () => document.documentElement.clientWidth,
         },
         row: {
             len: 100,
             height: 25,
         },
         col: {
             len: 50,
             width: 100,
             minWidth: 60,
             height: 0,
             indexWidth: 0,
         },
         style: {
             bgcolor: '#ffffff',
             align: 'left',
             valign: 'middle',
             textwrap: false,
             strike: false,
             underline: false,
             color: '#0a0a0a',
             font: {
                 name: 'Helvetica',
                 size: 10,
                 bold: false,
                 italic: false,
             },
         },
     };
     options.exportDisabled = exportDisabled;
     //x.spreadsheet.locale('zh-cn');
     const requestParam = getRequestUrlParam();
     let jmdata=requestParam.jmdata;
     // 下载oss图片到本地
     options.downLoadImage = (imageUrl)=>{
         return $jm.downLoadImage(options.domain, imageUrl)
     }
  
     if(jmdata){
         options.total = 1;
         xs = x.spreadsheet('#jm-sheet-wrapper', options)
     
         const excelData = JSON.parse(decodeURIComponent(jmdata));
        xs.data.rows._={}
        xs.data.cols._={};
        xs.data.styles=[];
        xs.loadData(excelData);
     }else{
         handleReportQueryInfo(token).then(()=>{
             let page=1;
             let total = 1;
             options.pageInfo={
                 url:`${baseFull}/jmreport/show`,
                 data:{
                     "id":excelConfigId,
                     "params":requestParam
                 }
             }

找过百度

阅读 575
avatarAI BotBETA

对于你的问题,“有没有大佬用过exceljs + x-spreadsheet 这个怎么固定表头呢 ?”,答案是肯定的。然而,你的代码示例中并没有明确设置表头固定的选项。

如果你想在 ExcelJS 和 x-spreadsheet 中固定表头,你需要设置相应的选项。然而,目前 x-spreadsheet 库并不直接支持固定表头的功能。ExcelJS 本身也不直接支持这个特性。

你可能需要使用 CSS 和 JavaScript 来手动固定表头。你可以为表头添加一个 CSS 类,然后使用 position: fixed; 属性来固定它的位置。例如:

.fixed-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
}

然后在你的 HTML 中将表头添加到这个类中:

<table class="x-spreadsheet" id="jm-sheet-wrapper">
    <thead class="fixed-header">
        <!-- Your header rows go here -->
    </thead>
    <tbody>
        <!-- Your data rows go here -->
    </tbody>
</table>

这将使表头在页面滚动时保持固定。然而,这只是一个简单的解决方案,可能不适用于所有情况。如果你需要更复杂的表头行为,你可能需要寻找一个更复杂的解决方案,或者使用一个支持这种特性的库。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题