gpt4 book ai didi

javascript - 具有复杂数据模型的自定义 Wicket (Ajax) 控件

转载 作者:行者123 更新时间:2023-11-30 15:23:54 25 4
gpt4 key购买 nike

我们正在为一个项目尝试 Wicket (v8),我想知道以下场景的最佳实践是什么:

  • 我们有一个返回 List<ComplexObject> 的数据库库函数.
  • 正在处理调用 IModel
  • 我们想渲染一个由这个模型支持的 d3 可视化,我们称之为 ComplexVisualization .
  • 模型需要呈现给某些 JavaScript 变量(如 JSON),以便我们的 d3 代码可以将其用作输入。
  • 用户可以在其他控件中进行一些更改,这样数据库库调用将生成不同的 List<ComplexObject>
  • 当 ComplexVisualization 添加为 Ajax Target 时,JavaScript 变量需要相应地更新其值,并且需要触发一些自定义 JavaScript 方法,以便我们可以刷新 d3 可视化。

我正在寻找一些代码示例,其中有人可以指出哪个类 ComplexVisualization应该扩展,我们如何为该组件呈现一些 HTML(如果需要),尤其是如何让一个 JavaScript 变量与 IModel<List<ComplexObject>> 同步.

感谢您的帮助和建议,

丹尼尔

最佳答案

ComplexVisualization 可能具有将其序列化为 JSON 的方法 toJson()。此外,它可能具有返回字符串的方法 update(),例如:"window.updateVisualization("+ toJson() +")"。这样你应该使用 target.appendJavaScript(complexVisualization.update())

JavaScript 方法 updateVisualization 应该由 JavaScriptHeaderItem 贡献定义,例如在 my-lib.js 中。

关于javascript - 具有复杂数据模型的自定义 Wicket (Ajax) 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43284072/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com