【发布时间】:2016-10-16 18:50:29
【问题描述】:
我正在使用https://github.com/ezraroi/ngJsTree,但遇到了以下问题。
我的 ng-model 是一个 AJAX 请求,当我的控制器触发时,数据还没有准备好,所以它不会渲染任何东西。
<div ng-controller='myCtrl'>
<div js-tree="treeConfig" ng-model="treeData" should-apply="ignoreModelChanges()" tree="treeInstance" tree-events="ready:readyCB;create_node:createNodeCB"></div>
</div>
【问题讨论】:
-
如果您使用
$http进行服务器调用,则该指令应在响应返回时正确更新。也许您的问题在于您的服务调用发生的方式。显示该代码将有助于集中问题以找到解决方案。 -
另外,
ignoreModelChanges()与$http请求配对似乎很奇怪,模型肯定会改变;你有没有试过看看它在移除后是否有效? -
这是我的 pluker plnkr.co/edit/fCrupsxDMprHdLCocZIe?p=preview
-
您的问题似乎是由于您的脚本没有正确加载。查看控制台错误:“拒绝从 'raw.githubusercontent.com/vakata/jstree/master/dist/jstree.js' 执行脚本,因为它的 MIME 类型 ('text/plain') 不可执行,并且启用了严格的 MIME 类型检查。” GitHub 不支持直接链接
raw脚本。 -
我更新了我的 pluker plnkr.co/edit/IRaqvd0DPcqkxgo0xoqa?p=preview
标签: javascript angularjs angularjs-directive jstree