为什么没有定义html2canvas?

时间:2013-08-14 12:49:43

标签: javascript extjs extjs4 html2canvas

如果我正在调用此函数,则始终“未定义html2canvas”。

makeScreenshot: function(button)
{
    debugger;
    html2canvas(document.body, {
        Uncaught ReferenceError: html2canvas is not defined
        onrendered: function(canvas) {
            document.body.appendChild(canvas);
        }
    });
},

但为什么呢?我有一类...就像在tutorial写的一样。有没有人有解决方案?

我想我需要在这里包含html2canvas,但我不知道如何。

Ext.define("TEST.controller.Desktop", {
    extend: "Ext.app.Controller",

    views: [
        "desktop.Desktop",
        //"desktop.TaskBar",
        "desktop.Toolbar",
        "desktop.DataprovidersDataView",
        "configuration.UploadFileWindow"
    ],

refs: [{
    ref: "viewport",
    selector: "viewport"
}, {

3 个答案:

答案 0 :(得分:6)

Ext对于未定义为类系统一部分的类知之甚少,您需要在html中使用脚本标记包含JS文件。

答案 1 :(得分:1)

如果它是Node.js应用程序,请尝试在使用该函数的JS文件中使用以下代码导入:

import html2canvas from 'html2canvas';
// Or
const html2canvas = require('html2canvas');

对于react,vuejs或Angular2 +应用程序,您可以在JS或TS文件中使用以下内容:

import html2canvas from 'html2canvas';

答案 2 :(得分:0)

对于我来说,您需要包括所需的库:

  1. plugins \ export \ libs \ blob
  2. plugins \ export \ libs \ classList
  3. 插件\导出\库\ blob \ fabric.js
  4. 插件\导出\库\ blob \ jszip
  5. plugins \ export \ libs \ blob \ pdfmake
  6. 插件\导出\库\ blob \ xlsx