首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >angular-ui-tree单击不起作用

angular-ui-tree单击不起作用
EN

Stack Overflow用户
提问于 2015-05-07 02:34:55
回答 2查看 2.5K关注 0票数 2

我下载了angular-ui-tree包,并将其安装在the服务器上。我可以在浏览器中调出示例页面,但按钮上的所有单击操作(折叠/展开树、添加节点等)都不起作用。我在firebug中没有得到任何错误。如果我将浏览器指向树组件( https://jimliu.github.io/angular-ui-tree/index.html)的公共页面,它就可以工作。

我做了一些调试,发现问题是当为ui-tree-node元素调用ng-repeat时,ng-click操作不起作用。在下面的代码中,test()函数在我的控制器中,如果我删除ui-tree-node或ng-repeat标记,它就会执行。

代码语言:javascript
复制
<li ui-tree-node ng-repeat="node in mydata" > 
    <a  ng-click="test()" >{{node.title}} </a>
</li>

这是角度树组件中的一个bug吗?有什么方法可以在我的环境中修复这个问题吗?

EN

回答 2

Stack Overflow用户

发布于 2015-05-07 21:18:52

修复方法是在顶层的ui-tree-nodes元素中添加data-nodrag标签。

(在li元素中添加data-nodrag也可以)。

票数 4
EN

Stack Overflow用户

发布于 2018-02-14 00:33:50

您可以同时使用以下两种方法:

使用toggle(this)

  • drag

点击

总之,只需确保要展开/折叠的元素不在ui-tree-handle内

代码语言:javascript
复制
<script type="text/ng-template" id="tree_renderer.html">
  <div ng-class="{collapsed: collapsed}">
    <div class="ctx_node" 
        ui-on-drop="onDrop($event, $data, ctx,node); active=false"> 
        <span class="expanded" 
            ng-click="toggle(this)"
            ng-class="{'collapsed': collapsed,'expanded': !collapsed}">
        </span>
        <span ui-tree-handle>{{node.title}}</span>
    </div>
  </div>
  <ol ui-tree-nodes="" ng-model="node.nodes">
    <li ng-repeat="node in node.nodes" 
        ui-tree-node ng-include="'tree_renderer.html'">
    </li>
  </ol>
</script>
<div ui-tree data-drag-enabled>
  <ol ui-tree-nodes="" ng-model="node.nodes" id="tree-root">
    <li ng-repeat="node in node.nodes" 
        ui-tree-node ng-include="'tree_renderer.html'"></li>
  </ol>
</div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30084899

复制
相关文章

相似问题

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