【问题标题】:AngularJS directive template with repeater带有中继器的 AngularJS 指令模板
【发布时间】:2013-02-04 16:48:49
【问题描述】:

我有这个包含转发器的模板的指令:

template:   '<div class="btn-group">' +
                    '<a href="javascript:void(0)" class="btn" ng-repeat="option in options" ng-click="select($event, scope)" value="{{option.value}}">{{option.label}}</a>' +
                '</div>'

在我的链接函数中,除非我把它放在 $timeout 中,否则下面会返回一个空数组:

var tmp = element.find('.btn');

小提琴链接:http://jsfiddle.net/dkrotts/XF3RY/1/

这些元素不应该在链接时可用吗?如果没有,是否有更清洁的方法来处理这种情况?

【问题讨论】:

  • element.ready(function(){})
  • 这对我不起作用。这是小提琴:jsfiddle.net/dkrotts/XF3RY/2
  • 收到.btn 后打算做什么?
  • radio btns 可以有一个初始值。我需要在加载时选择适当的值
  • 我能够以更“有角度”的方式完成此任务。见这里:jsfiddle.net/dkrotts/BtrZH/1

标签: angularjs angularjs-directive


【解决方案1】:

显然 ng-repeat 稍后会在您的链接功能运行后发生:https://stackoverflow.com/a/13771751/215945

您可能想尝试使用两个指令,类似于 Angular 主页示例中的 tabspane 指令。 radio-buttons 指令可以在其控制器上定义一个方法(使用this),当单击时radio-button 指令可以调用该方法。

有关选项卡和窗格指令如何通信的详细信息,请参阅https://stackoverflow.com/a/14168699/215945

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-04
    • 2015-03-17
    • 1970-01-01
    • 1970-01-01
    • 2014-06-01
    • 1970-01-01
    相关资源
    最近更新 更多