gpt4 book ai didi

angularjs - Angular 用户界面选择。与选择分开添加选择 - 重复

转载 作者:行者123 更新时间:2023-12-01 05:05:02 25 4
gpt4 key购买 nike

我需要在 ui-select 和一个自定义项中显示一系列选项。如何将此自定义项添加到当前指令?我无法在数组中插入此自定义项,因为用于显示此自定义项的 UI 不同

最佳答案

找到解决方案:向 ui-select 元素添加自定义指令,该元素手动添加到项目列表的底部。

代码(它包含一些比主题中描述的额外的属性和功能。我按原样发布了它):

.directive('customOption', function($timeout){
return {
restrict: 'A',
link: function(scope, el, attrs){

var options = JSON.parse(attrs.customOption);

var buttonText = options.buttonText;
var func = options.click;
var type = options.type;
var condition = options.showIf;
var template = "<div class='custom-option-container'><button type='button' class='btn btn-primary'><span class='glyphicon glyphicon-plus-sign'></span>" + buttonText + "</button></div>";

//if condition evaluated to true or no condition
if(scope.$eval(condition) || !condition){

el.find('li.ui-select-choices-group').append(template);
el.find('ul.ui-select-choices').removeAttr('ng-show');

//watch and
//remove ng-hide class to display this custom item even if there are no more items
scope.$watch(function(){
return el.find('ul.ui-select-choices').hasClass('ng-hide');
}, function(newVal){
if(newVal){
$timeout(function() {
el.find('ul.ui-select-choices').removeClass('ng-hide');
});
}
});

el.find('div.custom-option-container button').bind('click', function(){
scope[func].apply(null, [type]);
})
};
}
};
})

HTML:
            <ui-select ng-model="asset.category" custom-option='{"buttonText": "Add New Category", "click" : "showAddModal", "type": "category"}'>
<ui-select-match>{{ $select.selected.categoryName }}
</ui-select-match>
<ui-select-choices repeat="category in categories | filter: $select.search">
<span ng-bind-html="category.categoryName | highlight: $select.search"></span>
</ui-select-choices>
</ui-select>

关于angularjs - Angular 用户界面选择。与选择分开添加选择 - 重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29780560/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com