首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >电子- LightningChart -拖放图-不安全的内联问题?

电子- LightningChart -拖放图-不安全的内联问题?
EN

Stack Overflow用户
提问于 2022-09-13 21:55:57
回答 1查看 29关注 0票数 1

我对JS/电子很陌生。我正在尝试创建一个电子应用程序,我的电子应用程序有几个图表,我正在使用LightningChart JS作为我的图表。LightningChart API要求我将一个div作为目标,然后它显然会将一个画布插入到它所使用的div中。

我的应用程序将5-10张图表放在垂直列中。我希望用户能够上上下下地将他们的订单更改为他们喜欢的顺序。我试图使用一些普通的Javascript来支持HTML5拖放API。

通过遵循本教程(https://web.dev/drag-and-drop/),我获得了基本的拖放操作,只使用div中的文本,但是,当我填充图表时,画布标记会添加额外的内联样式。

当我必须将innerHTML从一个元素转移到另一个元素时,这就成了一个问题。电子抱怨这是一个不安全的内联。我犹豫不决,是否允许不安全的内联,就像我发现的任何页面/堆叠溢出的帖子,说不要那样做,我正试图用正确的方式开发我的应用程序。

问题:我能做些什么呢?删除div,然后在移动后重新实例化图表?

是否有更好/更简单的方法允许重新排列图表,而不是使用拖放API?

下面是在LightningChart运行时注入的画布HTML。

代码语言:javascript
运行
复制
<div id="GammaChart" style="position: relative; box-sizing: content-box; cursor: default;"><canvas width="2896" style="position: absolute; inset: 0px; width: 100%; height: 100%; box-sizing: content-box;" height="500"></canvas></div>

下面是我的一个div的样子:

代码语言:javascript
运行
复制
<div id="ContainerDiv" draggable="true" class="chartBox">
   <div id="IncAzContChart"></div>
</div>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-14 09:52:07

也许,在应用拖放重新定位时,可以使用其他方法来代替移动innerHTML内容的方法,例如用JavaScript更改DIV元素的顺序?

坦率地说,我不太确定这里的问题在哪里,但也许这是一个可行的解决方案。

例如,要在同一个容器中交换两个DIVs的位置,您可以这样做:

代码语言:javascript
运行
复制
container.replaceChildren(
     [...container.children].map(child =>
           // Swap positions of div1 and div2 
           child === div1 ? div2 :
           child === div2 ? div1 :
           child
     )
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73709536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档