ui-select数据绑定不在指令中工作

时间:2014-11-14 11:46:20

标签: angularjs angular-ui

我有angular-ui / ui-select工作正常如下:

ui-select(multiple="" name="resourceSelector" ng-model="appointmentTemplate.resources")
    ui-select-match(placeholder="Select Resources")
        span {{$item.name}}
    ui-select-choices(repeat="resource in resources | filter: {name:$select.search}")
        div {{resource.name}}

当加载appointmentTemplate.resources时,就像加载视图一样,资源会在元素中显示它。

我试图将它包装在一个指令中(我的第一个)。该指令不会显示提供的appointmentTemplate.resources。我可以选择新的并保存它们,只是不显示现有的。我已经使用ng-inspector确认了数据。这是指令控制器:

angular.module('app').directive('resourceMultiSelector', function(){
    return {
        restrict: 'E',
        scope: {
            ngModel: '=',
            placeholder: '@'
        },
        controller: function($scope, zResource, $sce){
            zResource.query(function(resources){
                $scope.resources = resources;
            });
        },
        templateUrl: "/partials/common/resourceMultiSelector"
    };

});

这是指令模板(在Jade中):

ui-select(multiple="" ng-model="$parent.ngModel")
    ui-select-match(placeholder="{{placeholder}}")
        span {{$item.name}}
    ui-select-choices(repeat="resource in resources | filter: {name:$select.search}")
        div {{resource.name}}

我使用这样的指令:

resource-multi-selector(ng-model="appointmentTemplate.resources" placeholder="Select resources" )

我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

咄。因此,列表中的对象需要来自选择列表,而不仅仅是相同的,而是相同的实际对象。回想起来我很明显:/

相关问题