问题标签 [react-konva]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - 组内垂直滚动
我正在使用可拖动节点的画布。一些节点包含我在画布上显示的项目列表。我目前正在渲染所有项目。我当前渲染的结构如下所示:
我目前面临的问题是当 Rect 的列表变得很长时,我的画布非常不清楚。每当所有 Rect 组合的总高度大于一定数量时,我想添加一个垂直滚动。有什么办法可以做到这一点?
canvas - react-konva:禁用画布元素 devicePixelRatio 比例
我正在使用 react-konva
当我渲染一个<Stage />
宽度为:750 的元素时,它将渲染一个<canvas />
宽度为 750 * devicePixelRatio的元素
将呈现(在 iPhone 7 中)
如何禁用此行为?
konvajs - 关闭 Konvajs 警告
当有超过五层时,Konva 会向控制台输出如下警告:
“舞台有n层。建议的最大层数为3-5。在舞台中添加更多层可能会降低性能。重新考虑你的树结构,你可以使用Konva.Group。”
这很好,但如果一切正常并且没有性能问题,我想关闭警告。
有没有办法阻止 Konva lib 输出某些警告?
javascript - 如何通过 event.target 区分同一层中的 react konva 元素?
再会,
我正在尝试控制 mouseleave 事件。<Drawing>
目标是在元素碰到 a 时继续该元素的笔划,<Label>
并在它超出<Stage>
. <Drawing>
当通过 setState() 触发 mouseleave 事件时,mouseLeaveHandler() on会停止描边。问题是当笔划通过<Label>
导致它停止时也会触发 mouseleave 事件。
我尝试记录事件对象,并且 event.currentTarget 属性似乎为我提供了区分 mouseleave 与<Label>
Konva.Image 以及 mouseleave 与<Stage>
Konva.Stage 所需的信息。但是,由于 currentTarget 属性是只读的,我不能以编程方式使用它。目标属性没有用,因为它会显示为同一个类 Konva.Image。
我的问题是,如何通过事件对象将 konva<Label>
与a 区分开来?<Stage>
我可以向事件目标添加其他属性以使一个与另一个不同吗?
到目前为止我所拥有的:
绘图.js
第一个事件是当中风击中<Label>
. 其次是它离开的时候<Stage>
。如您所见, currentTarget 比 target 属性有更多有用的信息
任何帮助表示赞赏。谢谢!
javascript - 在 react-konva 中转换后矩形无法正确重新渲染
我一直在我的一个项目中使用这个(https://github.com/oasis10702/konva-simple-example)代码,一切正常。但是,将 react 和 react-konva 更新到最新版本会对我造成一些意外行为。当使用转换器调整矩形大小时,它正在缩放边框笔划,见图。scaleX 和 scaleY 似乎都没有重置,这使得每次我移动矩形时它都会执行缩放。
我是 React 和 Konva 的新手,想知道在新版本中是否有一些逻辑发生了变化,我应该考虑缓解这种情况。
尝试在下面的沙箱中调整矩形的大小。 https://codesandbox.io/embed/vyv106x295 如果我将依赖项更新到最新版本,行为就会改变。
我试过用https://github.com/konvajs/konva/issues/401解决它,但在这个版本中似乎没有帮助。
reactjs - 如何为使用 react-konva 渲染的画布元素设置 HTML-id
我在一个项目中使用 react-konva 来渲染 HTML5-canvas 元素:
(...)
现在我希望 HTML 输出有一个 id (myId),如:
我只能找到konva-id但没有设置 HTML-id。