Angular2 + KineticJS错误:dynamic_kinetic__WEBPACK_IMPORTED_MODULE_4 __。Kinetic未定义

时间:2018-06-21 23:48:25

标签: angular kineticjs

背景

我目前正在将旧网站从PHP + MySQL + Jquery + KineticJS迁移到Angular6 + Firebase。它们具有广阔的区域,具有很多拖放功能和Canvas乐趣,这些都是用Jquery + KineticJS编写的-我希望我几乎可以将其直接导入到Component中,从而为客户端和我自己节省了大量时间

角度堆栈:

"dependencies": {
    "@angular/animations": "^6.0.5",
    "@angular/common": "^6.0.5",
    "@angular/compiler": "^6.0.5",
    "@angular/core": "^6.0.5",
    "@angular/flex-layout": "^6.0.0-beta.16",
    "@angular/forms": "^6.0.5",
    "@angular/http": "^6.0.5",
    "@angular/platform-browser": "^6.0.5",
    "@angular/platform-browser-dynamic": "^6.0.5",
    "@angular/router": "^6.0.5",
    "angular2-notifications": "^1.0.0",
    "core-js": "^2.5.7",
    "font-awesome": "^4.7.0",
    "hammerjs": "^2.0.8",
    "jquery": "^3.3.1",
    "kinetic": "^5.2.0",
    "lodash": "^4.17.5",
    "nodemailer": "^4.6.7",
    "rxjs": "^6.2.1",
    "typescript": ">=2.7.0 <2.8.0",
    "zone.js": "^0.8.26"
  },

已采取的步骤:

如您在上面看到的,jquerykinetic软件包都已安装。

然后我将其添加到项目的index.html中,以处理KineticJS使用的缺少的全局范围:

<script>
    var global = global || window;
    var Buffer = Buffer || [];
    var process = process || {
      env: { DEBUG: undefined },
      version: []
    };
</script>

现在我收到此错误:

  

错误TypeError:“ kinetic_kinetic__WEBPACK_IMPORTED_MODULE_4__。运动学未定义”

当我打电话时:

new Kinetic.Stage({
    container: 'elementId',
    width: canvasWidth,
    height: canvasHeight
});

我不知道,似乎其他人都没有搜索:(

我刚刚尝试了KineticJS 5.1.0,它与旧站点相同,并且存在相同的错误。

那么,有人知道解决此问题的方法吗?还是应该停止尝试将这个正方形拟合到圆圈中并进行重建?任何澄清或想法将不胜感激,谢谢:)

1 个答案:

答案 0 :(得分:0)

对于尝试这样做的任何可怜的灵魂,我建议不要打扰-只需使用以下库之一进行重建即可:

我选择了Dragula,到目前为止,它非常易于使用,实际上并不需要花费太多时间来重建。

关闭案例...