controller - 如何最好地将 Dynatree 树小部件包装在 Angular 指令中?

标签 controller angularjs dynatree directive

我了解 Angular Controller 和指令的基本功能,但我正在努力了解如何最好地应用它们来包装我们使用的 Dynatree 树小部件。

问题是 Dynatree 通常有自己的通过 ajax 检索数据并填充自身的方法 - 通常您可以通过调用其“appendAjax”方法将数据附加到特定的树节点来完成此操作 - 即它的所有操作。

我知道我可以分开对 Ajax 方法的调用,并将其放置在 Controller 中,将 ajax 调用的结果存储在我自己的树对象中 - 然后我可以在我的指令中监视对该树对象的更改,然后更新手动 Dynatree 小部件。但我处理的树数据庞大且复杂,当 dynatree 已经有自己的树结构时,在 Controller 中维护自己的树结构似乎效率很低。

我的感觉是,在这种情况下,我真的不需要 Controller ,相反,我可以将 Dynatree 包装在指令内,并基本上继续按照我一直使用它的方式使用它,但这似乎不起作用- 这可能就是我缺乏关于指令的 Angular 知识的地方。所以我有几个问题:

1] 在指令中进行任何类型的 ajax 调用是否被认为是不好的做法?

2] 如果是这样,我应该如何包装这个喜欢以某种方式做事的第三方控件?我真的需要在我的 Controller 中维护我自己的重复树结构吗?

3] 如果认为可以在指令中进行 Ajax 调用,我如何确保 ajax 方法在指令中运行? (我假设这是我的问题的原因)

最佳答案

如果有任何帮助,这里有 directive我们在 hawtio 中使用将 jquery dynatree 包装为 AngularJS 指令。

这是source code (它是用 TypeScript 编写的,但你应该明白这个想法;它主要是 JavaScript)。

关于controller - 如何最好地将 Dynatree 树小部件包装在 Angular 指令中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15650700/

相关文章:

javascript - AngularJs如何将数据从父组件发送到子组件

javascript - jQuery dynatree 工具提示

javascript - 如何重新加载/刷新/重新初始化 DynaTree?

ruby-on-rails - rails rspec -(第二次测试)预期响应为 < :redirect>, 但为 <200>

java - 是否有异常(exception),可以让我处理用户尝试为 UUID 输入过多字符的情况?

javascript - 单击一个元素的子元素时如何隐藏所有其他元素

android - ionic 框架同步数据和离线工作

javascript - 我怎样才能使dynatree标题中的跨度元素可点击

spring - 服务和 Controller 层异常处理设计模式

C# 扩展方法和保护级别?