错误:属性'innerHTML'在'Text'类型上不存在。角度2+。打印数据表图像时不打印

问题描述 投票:0回答:1

当我通过print.js打印角度数据表时出现错误,

Property 'innerHTML' does not exist on type 'Text'.

我在列中打印图像的方法是什么?

extend: 'print',
  exportOptions: {
    stripHtml: false,
    format: {
      body: function ( inner, coldex, rowdex ) {
        if (inner.length <= 0) {
          return inner;
        }
        const el = $.parseHTML(inner);
        let result = '';
        $.each( el, function (index, item) {
          if (item.nodeName === '#text') {
            result = result + item.textContent;
          } else if (item.nodeName === 'IMG') {
            result = result + item.outerHTML;
          } else if (item.nodeName === 'DIV') {
            result = result + item.innerHTML;
          } else if (item.nodeName === 'SUP') {
            result = result + item.outerHTML;
          } else if (item.nodeName === 'STRONG') {
            result = result + item.outerHTML;
          } else {
            result = result + item.innerText;
          }
        });
        return result;
      }
    }
  },

用表打印图像。

angular typescript printing angular-datatables
1个回答
0
投票

这是解决方案。添加:--- const it = item;然后将项目替换为它。见下面的运行代码。

extend:'print',exportOptions:{stripHtml:false,format:{body:function(inner,coldex,rowdex){if(inner.length <= 0){return inner; } const el = $ .parseHTML(inner); let result =''; $ .each(el,function(index,item){const it = item; if(item.nodeName ==='#text'){result = result + item.textContent;} else if(item.nodeName === 'IMG'){result = result + it.outerHTML;} else if(item.nodeName ==='DIV'){result = result + it.innerHTML;} else if(item.nodeName ==='SUP') {result = result + it.outerHTML;} else if(item.nodeName ==='STRONG'){result = result + it.outerHTML;} else {result = result + it.innerText;}});返回结果; },},

© www.soinside.com 2019 - 2024. All rights reserved.