KonvaJS / HTML5 Canvas无限滚动循环项-无法克隆舞台并追加到顶部

时间:2018-12-03 15:32:10

标签: javascript html5 canvas html5-canvas konvajs

我正在尝试创建一个包含许多项目(例如200个)的KonvaJS画布,该画布超出了视口的大小。围绕视口滚动可以正常工作,但是我希望整个画布看起来是无限的。与此类似: JS Fiddle example here因此,当您滚动到顶部时,您将看到底部的内容。我的计划是检测浏览器何时接近顶部或底部,并克隆舞台,然后将其附加到原始舞台的顶部或底部。一旦再次发生这种情况,则销毁原始舞台并重复。

this.cvForm.patchValue({
  nested: {
    level1: {
      level2: {
        level3: {
          chekbox: true|false
        }
      }
    }
  }
});

JSFiddle

但是,这似乎无济于事。我也尝试过Y偏移,但是没有运气。这是最好的方法吗?

1 个答案:

答案 0 :(得分:0)

Konva在阶段克隆中存在一个错误。克隆的阶段未正确连接到DOM。作为解决方法,您可以对其进行序列化/反序列化。

var JSON = stage.toJSON();

cloned_stage= Konva.Node.create(JSON, "container2")

演示https://jsfiddle.net/gsaorb82/2/