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

QQ登录

只需一步,快速开始

查看: 4899|回复: 6

[结贴] has no method “comp”

[复制链接]

87

主题

250

帖子

650

积分

高级会员

Rank: 4

积分
650
QQ
发表于 2018-12-21 11:23:28 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
自己定义的函数:
Model.prototype.findPid = function(adc) {
                this.comp("projData");
        }

在highcharts的事件响应中调用:
                                events: {
                                        click: function (event){
                                                // get pid projName ownerName Money Vol Date, moneyDetail
                                                // get pid
                                                var pid = event.point.pid;
                                                Model.prototype.findPid(pid);

                                                return true;
                                        }

能调用成功,但是执行this.comp却报错:Object has no method "comp"
函数定义和调用在同一js文件中。
这是什么情况?

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35878
发表于 2018-12-21 13:48:07 | 显示全部楼层
Model.prototype.findPid(pid);这样调用本来就不对

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



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

使用道具 举报

87

主题

250

帖子

650

积分

高级会员

Rank: 4

积分
650
QQ
 楼主| 发表于 2018-12-21 16:46:37 | 显示全部楼层
本帖最后由 zzqqstc 于 2018-12-21 17:17 编辑
jishuang 发表于 2018-12-21 13:48
Model.prototype.findPid(pid);这样调用本来就不对

具体需求要做什么?

我在moduleLoad函数内,对highchart进行初始化。
然后在highchart中定义的事件回调函数中,操控组件,用this.comp("xxx")的方式操控组件。
但是提示找不到comp。
这个应该怎么处理?                              
events: {
                                        click: function (event){
                                                // get pid projName ownerName Money Vol Date, moneyDetail
                                                // get pid
                                                var pid = event.point.pid;
                                                // Model.prototype.findPid(pid);
                                                debugger;
                                                this.comp("projData");

                                                return true;
                                        }
                                },

上述代码就是单击事件的回调函数,但是提示has no method comp。
是不是职能用jquery操控组件了,没法使用this.comp("xxx")?


$.getJSON('../../project/WindPower/process/WPMainPage/43.json', function (geojson) {

        $('#world-map-markers').highcharts('Map', {
                chart : {backgroundColor:'transparent'},
                        title : {
                                                text : '风   电   大   数   据   导   航',
                                                style: {color: '#BBEEFF',fontWeight: 'bold',fontSize: '32px'}
                                        },
                        exporting:{enabled:false},
            //mapNavigation: {enabled: true},

                        legend: {
                                enabled:false,
                                //layout: 'vertical',
                                align: 'center',
                                verticalAlign: 'bottom',
                                title: {
                    text: 'GDP(亿元)²',
                    style: {
                        color: '#999999'
                    }
                },
                        },
            tooltip: {
                                    backgroundColor: 'none',
                                                borderWidth: 0,
                                                shadow: false,
                                                useHTML: true,
                                                padding: 0,
                                                pointFormat: ' ',
                                                positioner: function () {
                                                                return { x: 0, y: 0 };
                                                }
                        },
                        plotOptions: {

                series: {
                                        borderColor:"rgba(200, 200, 200, 0.6)",
                    events: {
                                                click:function(event){
                                                        // alert("hello");
                                                        // location.href="/cyfz.jspx?code="+event.point.code+"&year="+event.point.year;
                                                }
                    }
                }
            },
            series : [{
                                data: [{"offers":47.65, "code":"4331","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"湘西自治州","firms":0,"value":582.64,"energy":0},{"offers":80.65, "code":"4310","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"郴州市","firms":0,"value":2337.73,"energy":0},{"offers":72.12, "code":"4311","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"永州市","firms":0,"value":1728.46,"energy":0},{"offers":82.33, "code":"4309","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"益阳市","firms":0,"value":1665.41,"energy":0},{"offers":474.6, "code":"4301","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"长沙市","firms":0,"value":10535.51,"energy":0},{"offers":76.43, "code":"4312","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"怀化市","firms":0,"value":1503.97,"energy":0},{"offers":91, "code":"4302","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"株洲市","firms":0,"value":2580.4,"energy":0},{"offers":57.56, "code":"4313","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"娄底市","firms":0,"value":1544.98,"energy":0},{"offers":31.7, "code":"4303","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"湘潭市","firms":0,"value":2055.76,"energy":0},{"offers":72, "code":"4304","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"衡阳市","firms":0,"value":3132.48,"energy":0},{"offers":79, "code":"4305","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"邵阳市","firms":0,"value":1691.5,"energy":0},{"offers":84, "code":"4306","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"岳阳市","firms":0,"value":3258.03,"energy":0},{"offers":82.6, "code":"4307","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"常德市","firms":0,"value":3238.14,"energy":0},{"offers":89, "code":"4308","devArea":0,"year":"","invest":0,"dtype":"","tax":"","dname":"张家界市","firms":0,"value":542.41,"energy":0}],
                mapData: geojson,
                joinBy: ['id', 'code','value'],
                name: ' ',
                                borderColor: 'rgba(255, 255, 255, 1)',
                                borderWidth: 0,
                states: {
                   hover: {color: 'rgba(255, 255, 255, 0.8)'}
                },
                showInLegend: false,
                                //zIndex:1,
                dataLabels: {
                    enabled: false,        //显示区域名称
                                        formatter: function () {
                                                if (this.point.properties && this.point.properties.name) {
                            return this.point.properties['name'];
                        }
                    },
                                        color:'rgba(100,100,100,1)',
                                        // userHTML: true,
                                        zIndex:0,
                },
                               
            },
                        {
                                type: 'mappoint',
                                //type: 'mapbubble',
                                showInLegend: false,
                                tooltip: {enable:false, headerFormat: '',footerFormat: '',pointFormat:'{point.name}' },
                                ame: '城市',
                                color: 'rgba(220,220,220,1)',
                                dataLabels: {
                                        enabled: true,
                                        overflow: 'justify',
                                        crop: false,
                                        allowOverlap: true,
                                },
                                events: {
                                        click: function (event){
                                                // get pid projName ownerName Money Vol Date, moneyDetail
                                                // get pid
                                                var pid = event.point.pid;
                                                // Model.prototype.findPid(pid);
                                                debugger;
                                                this.comp("projData");

                                                return true;
                                        }
                                },
                                data: [{"name":"苏宝顶","x":112.93,"y":-28.23,"pid":"B6106218559147E688BE8B50BA45610B"},{"name":"通道","x":113.13,"y":-27.83,"pid":"CA548D0255B84A3695474DD09C9EF33D"},{"name":"界首","x":112.93,"y":-27.23,"pid":"23FB5ACD8A0246EC9202405E287B12C7"},{"name":"五团","x":112.57,"y":-26.9,"pid":"92B1CA384F714F50AA831C5D240D83F9"},{"name":"隆回金坪","x":111.47,"y":-27.25,"pid":"191E3795AA364539923E9C8622BCF25B"},{"name":"宝鼎山一期","x":113.12,"y":-29.37,"pid":"B8E4E5D447834637BF0088A523C7DC9D"},{"name":"宝鼎山二期","x":111.68,"y":-29.05,"pid":"79FC5289507148D9877ED220B2B20239"},{"name":"芷江西晃山一期","x":110.47,"y":-29.13,"pid":"C2762C476318439EB042D784714009C7"},{"name":"芷江西晃山二期","x":112.32,"y":-28.6,"pid":"E23CC5E1B9414F51B227AD15A66797C6"},{"name":"永州江华桥头铺风电场","x":111.62,"y":-26.43,"pid":"F66BFCEB79464738A7B9833415B4095C"},{"name":"登云山","x":110,"y":-27.57,"pid":"30F070EB13F841018B9946BCB599561E"}]//,{"name":"娄底市","x":112,"y":-27.73},{"name":"湘西自治州","x":109.73,"y":-28.32}]
                                //data: [{"name":"长沙","x":112.93,"y":-28.23},{"name":"株洲市","x":113.13,"y":-27.83},{"name":"湘潭市","x":112.93,"y":-27.83},{"name":"衡阳市","x":112.57,"y":-26.9},{"name":"邵阳市","x":111.47,"y":-27.25},{"name":"岳阳市","x":113.12,"y":-29.37},{"name":"常德市","x":111.68,"y":-29.05},{"name":"张家界市","x":110.47,"y":-29.13},{"name":"益阳市","x":112.32,"y":-28.6},{"name":"郴州市","x":113.02,"y":-25.78},{"name":"永州市","x":111.62,"y":-26.43},{"name":"怀化市","x":110,"y":-27.57},{"name":"娄底市","x":112,"y":-27.73},{"name":"湘西自治州","x":109.73,"y":-28.32}]
                        },
                        {
                                mapData: geojson,
                                name: 'shadowmap',
                                borderWidth:0,
                                shadow:{color:"rgba(100,117,170,1)", offsetX:-20, offsetY:25, opacity:0.6,width:1},
                                nullColor: 'rgba(1,100,160,1)',
                                showInLegend: false,
                                zIndex:-1,
                        }
                        ]
        });
    });


这是在moduleLoad中处理highchart初始化的代码。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35878
发表于 2018-12-21 17:24:48 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

87

主题

250

帖子

650

积分

高级会员

Rank: 4

积分
650
QQ
 楼主| 发表于 2018-12-21 19:02:14 来自手机 | 显示全部楼层
本帖最后由 zzqqstc 于 2018-12-21 21:51 编辑
jishuang 发表于 2018-12-21 17:24
参考http://docs.wex5.com/bex5-ui-question-list-10267/中的看看

这种在highchart中用到的回调函数,就相当于是在html页面中用<script></script>写的函数么?   
是不是相当于highchart在初始化的时候将回调函数,都折腾回html页面了?   感觉也不是,debugger最后进入的还是js文件。

能不能详细解释一下,js文件中的函数和.w文件中的函数,为啥上下文不一样,.w中需要额外处理来获取this。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35878
发表于 2018-12-22 22:43:56 | 显示全部楼层
自己调用的第三方的,平台不会按照平台的组件规则生成,里面的this就不是model就不能操作平台的model方法
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

87

主题

250

帖子

650

积分

高级会员

Rank: 4

积分
650
QQ
 楼主| 发表于 2019-1-21 10:41:32 | 显示全部楼层
jishuang 发表于 2018-12-22 22:43
自己调用的第三方的,平台不会按照平台的组件规则生成,里面的this就不是model就不能操作平台的model方法 ...

请结贴
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 07:05 , Processed in 0.070093 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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