如何包裹/截取Angular范围值
How to wrap/intercept an Angular scope value
我正在尝试使用Angular多选指令(具体为isteve/Angular multi-select)作为多选接口组件。它的问题是,它返回的数据是所选对象的完整数组,而我们更愿意使用对象的简化版本,例如ID数组。由于这个组件已经被我们自己的抽象指令包装了,所以我想找到一些方法,在修改子作用域值时拦截它,然后通过包装器指令上的ngModel作用域属性返回减少的值。
指令定义
angular.module('cw-ui').directive('cwSelect', function() {
return {
scope: {
ngModel: '=',
options: '=',
maxLabels: '@?',
selectionMode: '@?',
onClose: '&'
},
templateUrl: 'UI/Directives/select',
compile: function(element, attributes) {
if(attributes.maxLabels === undefined) {
attributes.maxLabels = 3;
}
}
};
});
包装指令模板
<isteven-multi-select input-model="options" output-model="ngModel" button-label="icon name" item-label="icon name maker" tick-property="ticked" group-property="msGroup" max-labels="{{::maxLabels}}" selection-mode="{{selectionMode}}" on-close="onClose()"></isteven-multi-select>
不要完全遵循,但一种不那么优雅的方法是监视由isteven指令修改的模型值,然后将数据打包到其他模型对象中,供您自己的指令使用。
相关文章:
- Angular JS IE9 Hashbang url rewriting
- 如何使用skip参数使用angular ui引导进行服务器端分页
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- 使用angular重定向到html页面
- angular.js没有'无法在PhoneGap中处理视图标记
- Javascript(Angular)从一个对象数组到第二个数组查找值
- angular 1.5应用程序中的导航栏
- angular的下拉菜单
- Angular只从数组中获取所需的数据
- 如何将不可变的js导入angular 2(alpha)
- Angular js-返回一个包含类似
- 如何使用 Angular JS 将数据保存在数据库中
- 将JSON对象传递给angular指令
- 从HTTPGET返回一个自定义对象列表,以便在Angular 2应用程序中使用
- Angular:更新一次性绑定的数据
- 同步调用,直到用户通过angular验证为访问者
- 在Angular中,我可以从模板url中截取内容吗
- 如何包裹/截取Angular范围值
- 如何在 Angular Js 中截取数据绑定的结束