美文网首页
ext6.0过滤

ext6.0过滤

作者: 痛心凉 | 来源:发表于2021-04-29 14:48 被阅读0次

    ext6.0及以上的ajax请求,需要过滤返回节点的操作,可以从ext6.0或者以上的api上找到该方法filters;您需要去掉返回的某些节点,可以参考下面的方法

    Ext.create('Ext.data.TreeStore', {
            storeId:'Template',         // 数据集ID
            root: {                     // 根节点配置
                id: '400',              // 根节点ID
                expanded: true,         // 默认展开
                text: '模板'          // 根节点名称
            },
            proxy: {                    // 访问代理
                type: 'ajax',           // 类型异步
                // 请求方式为post
                actionMethods: {
                    read: 'POST'
                },
                api: {
                    read: 'test/testUrl'   //接口
             },
            //接口 过滤
             filters:[
                 function (item) {
    //比如 过滤掉 返回节点为404 
                    return 404!=item.id;
                }
             ]
      
    })
    

    您需要处理该接口返回的数据,需要在接口返回的数据中追加数据,您也需要在filters方法中执行您的判断操作。

     filters: [
            function (item) {
                // 后台返回的数据
                if (item.data.name == '字体图标') {
                    //获取字体图标集合
                    var iconArr =[
                      //  特定图标
                      {icon: 'icon-font1',name: '字体1'},
                      {icon: 'icon-font2',name: '字体2'},
                      {icon: 'icon-font3',name: '字体3'},
                      {icon: 'icon-font4',name: '字体4'},
                      {icon: 'icon-font5',name: '字体5'},
                    ]
                    for ( var i = 0 ; i<iconArr.data.length ; i++ ) {
                        var iconItem = {
                            icon: '',
                            id: '',
                            name: ''
                         }
                        if(iconArr.data[i].icon){
                            // 字体图标icon
                            var fontIcon = iconArr.data[i].icon;
                            // 字体图标icon名
                            iconItem.icon = 'iconfont '+ fontIcon;
                            // 字体图标id
                            iconItem.id = 'Icon-'+fontIcon.replace(' colorWhite', "") + i;
                            // 字体图标name名
                            iconItem.name =iconArr.data[i].name;
                            // 外部引用的字体图标添加到列表中
                            item.data.components.push(iconItem)
                        }
                    }
                }
                return item;
            }
        ]
    

    相关文章

      网友评论

          本文标题:ext6.0过滤

          本文链接:https://www.haomeiwen.com/subject/dehwrltx.html