加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – ui-select多重选择在显示选项上非常慢

发布时间:2020-12-17 07:43:14 所属栏目:安全 来源:网络整理
导读:我遇到这个问题,我不知道如何解决它.我在我的网页上使用了 ui-select multiselect.首先,将http.get请求发送到获取数据的URL,然后填充ui-select选项.数据较大 – 数据长度为2100.该数据将显示为选项. (在页面加载期间的开始处获取数据并存储在数组中) 但问题
我遇到这个问题,我不知道如何解决它.我在我的网页上使用了 ui-select multiselect.首先,将http.get请求发送到获取数据的URL,然后填充ui-select选项.数据较大 – 数据长度为2100.该数据将显示为选项. (在页面加载期间的开始处获取数据并存储在数组中)

但问题是每次我点击多重选择来选择一个选择,需要4-5秒钟来填充列表,页面变得非常慢.我该如何减少这个时间?

选择数据存储在数组中,数据类型是字符串数组.

<ui-select multiple ng-model="selectedFields.name"  style="width: 100%;">
    <ui-select-match placeholder="Select fields...">{{$item}}</ui-select-match>
    <ui-select-choices repeat="fields in availableFields | filter:$select.search">
      {{fields}}
    </ui-select-choices>
  </ui-select>

在控制器中,

$scope.selectedFields = {};
$scope.selectedFields.name = [];

$scope.init = function() {

    $http.get(url)
        .success( function(response,status,headers,config) {
            availableFields = response;
        })
        .error( function(err) {
        });
};

$scope.init();

如果不是这样,有没有任何其他选择/选择我可以使用哪个不延迟显示选择选择?

这是ui-select中的已知问题.我尝试了以下几种方式,两者都可以

1)有一个解决方法 – 使用

| limitTo: 100

这将选择显示限制为100,但可以选择所有选项.查看this thread了解更多详情.

2)由于某些时候,需要在选择中显示整个列表,1)不是一个可行的选择.我使用了一个不同的库 – selectize.js.这是一个plunker演示在页面中给出

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读