繁体   English   中英

是否可以在自定义指令中使用理解表达式?

[英]Is it possible to use comprehension expressions in custom directives?

有没有一种方法可以使用类似于ng-options使用的理解表达式来创建一组单选按钮或复选框?

app.js

angular
    .module("app", [])
    .controller("controller", ["$scope", function($scope){
        $scope.selectedRadio = null;
        $scope.selectedCheckboxes = [];
        $scope.radioOptions = [
                    //some options...
             ];
        $scope.checkboxOptions = [
                    //some options...
             ];
    }]);

的index.html

<div data-ng-app="app" data-ng-controller="controller>
    <radio-group ng-radios="option as option.option_label
                            for option in radioOptions
                            track by option.option_id"
                 ng-model="selectedRadio"
                 ng-selected="option.selected" />
    <checkbox-group ng-checkboxes="option as option.option_label
                                   for option in checkboxOptions
                                   track by option.option_id"
                    ng-model="selectedCheckboxes"
                    ng-selected="option.selected"  />
</div>

我希望避免使用复杂的正则表达式来支持所有形式的理解表达式。

因为ngOptions (以及ngRepeat )提供自定义表达式语法是因为它被编码为支持它

为了支持第三方指令中的自定义表达式,应使用regexps手动解析属性值-从现有指令中借用或从头开始编写。

除了$interpolate$parse服务支持的基本Angular表达式之外, Angular中没有内置的表达式魔术。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM