是否可以在自定义指令中使用理解表达式
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
)之所以提供自定义表达式语法,是因为它的编码支持它。
要支持第三方指令中的自定义表达式,应该使用regexp手动解析属性值——从现有指令中借用或从头开始编写。
除了$interpolate
和$parse
服务支持的基本Angular表达式外,Angular中没有内置的表达式魔术。
相关文章:
- 错误:[$compile:nonassign]表达式'未定义'与指令'内容可编辑'是不可
- AngularJS:带有HTML和angular表达式的指令;编译”;具有外部范围的内容
- Angular Filter在指令表达式中不起作用
- 错误:与指令一起使用的表达式“未定义”不可赋值
- 在指令中从 attr 的角度保存手表表达式
- AngularJS观察指令属性表达式,动态继承作用域
- 是否可以在自定义指令中使用理解表达式
- Angularjs:使用angular指令修改angular表达式提供的内部html内容
- 角度:如何通过 id 和指令中的表达式获取元素
- 正则表达式在指令中替换为 html 标记
- 在 AngularJS 中计算指令属性中的表达式
- 如何在子指令中计算 Angular 表达式并将其公开在父指令上
- ng-intro 表达式 'undefined' 与指令 'ngIntroOptions'
- 正在评估AngularJS ng-show指令中的表达式
- 选择指令的角度表达式
- 如何将正则表达式从指令传递到输入AngularJs
- 通过指令表达式继承方法
- 计算传递给Angular指令的对象中的字符串表达式
- 在Angular 1.4.5中,在ng repeat中使用$parse指令计算表达式
- 错误:[$compile:nonassign]表达式'未定义'与指令'myFacebook