关于egret引用第三方库的笔记

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

关于egret引用第三方库的笔记


当前我需要使用一个第三方的js库(umeng的js统计):

我创建个UmengAnalysis.js文件,代码如下:

/**
 * Created by haocao on 15/6/25.
 */

var umeng;
(function(umeng){

    function onClickEvent(label,duration){
        onEvent('click',label,duration)
    }

    function onEvent(tag, label, duration) {
        // pc不统计
        if(egret.MainContext.deviceType == egret.MainContext.DEVICE_PC) return;

        prompt("event", JSON.stringify({tag: tag, label: label, duration: duration}));
    }

    function onKVEvent(tag, map, duration) {
        // pc不统计
        if(egret.MainContext.deviceType == egret.MainContext.DEVICE_PC) return;

        map.id = tag;
        map.duration = duration;

        prompt("ekv", JSON.stringify(map));
    }

    umeng.onClickEvent = onClickEvent;
    umeng.onEvent = onEvent;
    umeng.onKVEvent = onKVEvent;

})(umeng || (umeng={}));


然后新建UmengAnalysis.d.ts文件,代码如下:

/**
 * Created by haocao on 15/6/25.
 */
declare module umeng{
    export function onClickEvent(label:string,duration?:number);
    export function onEvent(tag:string, label:string, duration?:number);
    export function onKVEvent(tag:string, map:{}, duration?:number);
}

  


步骤:                                                                                                                                                                    

1.在项目的根目录创建一个 umeng.json 文件,此文件的文件名最好和你的 module名字相同

在 umeng.json 中编写以下配置

{

    "name": "umeng",

    "dependence": ["core"],

    "source":"src/umeng",

    "file_list": [

        "UmengAnalysis.js",

        "UmengAnalysis.d.ts"

    ]

}

注:

name : 模块名称

depencnce : 模块依赖的其他模块的模块名

source : 源代码的路径

file_list : 此模块包括的所有代码,需要包括全部 js 文件、ts 文件以及js文件所对应的.d.ts文件


2.src目录创建,第三方库的文件夹umeng。把js,ts文件放进去。

3.在项目的 egretProperties.json 文件中,添加以下代码:


modules:

[

 {"name":"umeng" , "path":"."}

]


4.执行 egret build -e 就会把模块编译


最后说明:

针对已有js如何封装成ts,具体可以参考egret的源码。这个目前还没有详细的教程,只能自己参考源码。

参考文章:

http://bbs.egret-labs.org/thread-915-1-1.html

转载于:https://my.oschina.net/oahcfly/blog/470591

你可能感兴趣的:(关于egret引用第三方库的笔记)