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



当我通过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;
      }
    }
  },

用表打印图像。

这就是解决方案。添加:--- 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 = <HTMLElement> 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;
                  }
                });
                return result;
              }
            }
          },

最新更新