起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5948|回复: 15

[结贴] 首页问题

[复制链接]

174

主题

482

帖子

1258

积分

金牌会员

Rank: 6Rank: 6

积分
1258
QQ
发表于 2017-6-27 10:26:03 | 显示全部楼层 |阅读模式
我自己修改了首页功能树的显示,修改成顶部和左侧,顶部显示的是一级目录,点击一级目录后,左侧显示该目录下的二级三级等等,
当我左侧存在二级目录的时候注销该用户退出后再次登录就会报错,当我没有点击一级目录,则无二级目录的情况下则不会报错这是为什么?
报错如下:

1.png
2.png


index.js修改功能树如下:
//创建左侧树形菜单
        Model.prototype.doCreateLeftFunctionTree = function(event,m){
               
            var context =  this.getContext();                                                                        //收藏夹相关
                var id =  this.getContext().data.bizParams.value.currentPersonID;   //收藏夹相关
                var funcs = FUNC;
                        $content = $(".sidebar-menu"),
                        html = [],
                        me = this;
               
                function printTree(children, isFirst){
                       
                        if(!children || !children.length) return;
                                for(var i=0; i<children.length; i++){
                                        var child = children;
                                        var hasChildren = child.$children && child.$children.length > 0;
                                        html.push('<li class="');
                                        if(hasChildren)
                                                html.push(' treeview');
                                        if(child.psmCount > 1)
                                                html.push(' psm');
                                        html.push('">');
                                        html.push('<a ');
                                        if(child.url){
                                                html.push('title="', child.label, '" ');
                                                html.push('pageKey="', child.pageKey, '" ');
                                        }
                                        html.push('>');
                                        if(hasChildren && isFirst){
                                                html.push('<i class="x-functree-icon ' + (child.iconClass||(hasChildren?'fa fa-folder':'fa fa-circle-o')) + '"/>');
                                        }
                                        if(isFirst){
                                                html.push('<span class="title">');
                                        }               
                                        html.push(child.label);                   
                                        if(isFirst){
                                                html.push('</span>');
                                                html.push('<span class="selected"></span>');
                                        }                               
                                        if(child.psmCount > 1){
                                                html.push('<span class="psm icon-person-stalker pull-right-container"></span>');
                                        }
                                       
                                        html.push('</a>');
                                        if(hasChildren){
                                                html.push('<ul class="treeview-menu">');
                                                printTree(child.$children);
                                                html.push('</ul>');
                                        }
                                        html.push('</li>');
                        }
                }
                printTree(funcs[m].$children, true);
                //Model.prototype.selectQuick(id);
                html = html.join('');
                $content.append(html);
                //设置main的显示名
                $content.find('li>.x-portal-showMain>.title').html(this._cfg.main.title);
                $('li>a', $content).click(function(){
                        var el = $(this),pageKey=el.attr('pageKey');
                        if(pageKey){
                                $(".func-open", $content).removeClass("func-open");
                                el.parent().addClass("func-open");
                                me.showPage(pageKey);
                        }
                });
        };
        //创建顶部树形菜单
        Model.prototype.doCreateTopFunctionTree = function(event){
            var context =  this.getContext();                                                                        //收藏夹相关
                var id =  this.getContext().data.bizParams.value.currentPersonID;   //收藏夹相关
                FUNC = event.funcs;
                var funcs = event.funcs,
                        $content = $(".nav_first"),
                        html = [],
                        me = this;
                function printTree(children, isFirst){
                        if(!children || !children.length) return;
                        for(var i=0; i<children.length; i++){
                                //
                                var child = children;
                                var hasChildren = child.$children && child.$children.length > 0;
                                if(hasChildren){
                                        html.push('<li><a>'+child.label+'</a></li>');

                                }
                               
                        }
                }
                printTree(funcs, true);
                html = html.join('');
                $content.append(html);
        };
        Model.prototype.btnEditClick = function(event,i) {       
        $(".nav_first>li>a").removeClass('choosed');       
        $(".nav_first>li:eq("+i+")>a").addClass('choosed');       
                this.clearFuncTree();
                this.on('onLoadFunctionTree', this.doCreateLeftFunctionTree(event, i));
               
        }

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2017-6-27 11:19:42 | 显示全部楼层
确认eData中是什么?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

174

主题

482

帖子

1258

积分

金牌会员

Rank: 6Rank: 6

积分
1258
QQ
 楼主| 发表于 2017-6-27 11:34:09 | 显示全部楼层
本帖最后由 mmmmrelax 于 2017-6-27 11:35 编辑
jishuang 发表于 2017-6-27 11:19
确认eData中是什么?

我debugger进去之后显示的就是这样的。和我正常登陆时调试的结果 eData是一样的登录失败的调试结果:
3.png

登陆成功的调试结果:
4.png
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2017-6-27 11:46:46 | 显示全部楼层
左侧存在二级目录怎么创建的?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

174

主题

482

帖子

1258

积分

金牌会员

Rank: 6Rank: 6

积分
1258
QQ
 楼主| 发表于 2017-6-27 11:49:33 | 显示全部楼层
jishuang 发表于 2017-6-27 11:46
左侧存在二级目录怎么创建的?

在一楼里面 写了 放在图片下面的第一个方法就是创建左侧功能树的
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2017-6-27 15:25:40 | 显示全部楼层
确认清空功能的时候都清空了吗?
在index.js中加载功能树和清空功能树调用的是自己的方法吗?
//加载功能树
                this.on('onLoadFunctionTree', this.doCreateFunctionTree);
                //清理功能树
                this.on('onClearFunctionTree', this.clearFuncTree);

远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

174

主题

482

帖子

1258

积分

金牌会员

Rank: 6Rank: 6

积分
1258
QQ
 楼主| 发表于 2017-6-27 15:36:03 | 显示全部楼层
jishuang 发表于 2017-6-27 15:25
确认清空功能的时候都清空了吗?
在index.js中加载功能树和清空功能树调用的是自己的方法吗?
//加载功能树 ...

怎么才能确定都清空了呢?清空功能树的方法我没改 还是用的原来的
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36069
发表于 2017-6-27 16:00:21 | 显示全部楼层
你自己修改了功能树的创建肯定不能用平台的啊
平台的pc中是遍历节点remove
        Model.prototype.clearFuncTree = function(){
                $(".page-sidebar-menu>li").each(function(index, item){
                        if(index>1) $(item).remove();
                });
        };

你要自己找到你创建的remove
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

174

主题

482

帖子

1258

积分

金牌会员

Rank: 6Rank: 6

积分
1258
QQ
 楼主| 发表于 2017-6-27 16:20:16 | 显示全部楼层
jishuang 发表于 2017-6-27 16:00
你自己修改了功能树的创建肯定不能用平台的啊
平台的pc中是遍历节点remove
        Model.prototype.clearFuncTree ...

//清理左侧树形菜单
        Model.prototype.clearFuncTree = function(){
                $(".sidebar-menu>li").each(function(index, item){
                        $(item).remove();
                });
        };

这是我的
回复 支持 反对

使用道具 举报

174

主题

482

帖子

1258

积分

金牌会员

Rank: 6Rank: 6

积分
1258
QQ
 楼主| 发表于 2017-6-27 16:23:39 | 显示全部楼层
jishuang 发表于 2017-6-27 16:00
你自己修改了功能树的创建肯定不能用平台的啊
平台的pc中是遍历节点remove
        Model.prototype.clearFuncTree ...

现在的情况是只有打开二级目录的情况下,注销用户,再次登录会报错,需要重新刷新页面登录。如果不打开二级目录重新登录则不会报错
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-25 22:47 , Processed in 0.076207 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表