我正在尝试对AngularJS中<select>
的默认值进行硬编码,将值设置为0
而不是null
。
这不需要将“None selected”对象推送到我绑定的实际项目集合或具有“保存功能”清理对象。
使用适当的值而不是null来实现硬编码默认选项的最优雅方法是什么?
如果您选择父级然后选择默认值,您将获得null parentId而不是0。
答案 0 :(得分:0)
我设法通过使用前置过滤器来解决这个问题,前置过滤器将硬编码的选择值作为参数。
myApp.filter('prepend', function() {
return function(input, prependObj) {
var out = [prependObj];
out = out.concat(input);
return out;
};
});
<select ng-model="editItem.parentId" ng-options="i.id as i.title for i in (items | prepend:{id:0, title:'No parent'})">