文档章节

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

flyoahc
 flyoahc
发布于 2015/06/25 13:00
字数 404
阅读 3533
收藏 1
点赞 0
评论 0

关于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

© 著作权归作者所有

共有 人打赏支持
flyoahc
粉丝 12
博文 37
码字总数 15728
作品 0
南京
程序员
Egret之粒子系统

使用Egret土特产Egret Feather粒子编辑器 。 导出流星粒子特效如下如下: 导出2个文件 : 一 , 准备工作 :加入粒子模块 , 粒子系统在第三方库里面。所以需要下载第三方库加入到项目里面 ...

Aonaufly
2017/10/04
0
0
Egret Engine 3.0.0 发布,HTML5 游戏开发框架

Egret Engine 3.0.0 发布!更新时间:2015年12月25日 概述 Egret Engine 3.0 包含了白鹭时代研发的遵循HTML5标准的2D引擎及全新打造的3D引擎,它解决了HTML5性能问题及碎片化问题,灵活地满足...

oschina
2016/01/12
3.6K
5
Egret之自定义类库

今天写了一个属性绑定的类库. 步骤如下 : 一 , 新建一个EUI项目,删除Main.ts文件 二 , 发布项目 三 , 新建库项目(bind) egret create_lib bind 得到库项目结构 四,手写bind.d.ts文件为bind....

Aonaufly
2017/10/27
0
0
HTML5 游戏开发框架--Egret

Egret Framework是一款使用JavaScript(TypeScript)编写的HTML5开源免费游戏框架。Egret Framework的核心定位是开放,高效,优雅。基于它,你可以快速轻松地构建属于自己的HTML5移动游戏。 Eg...

红薯
2014/03/26
31.5K
3
白鹭引擎 5.3.0 正式发布,支持 3D 游戏开发

一直关注白鹭引擎的童靴会发现,今天白鹭引擎先后完成了白鹭引擎5.2.0、白鹭引擎5.3.0两个版本的更迭,在周三发布《白鹭引擎稳定版即将发布,后续路线图同步公开》文中,我们已详细介绍了白鹭...

白鹭科技
05/25
0
0
Egret之JSZip基础

首先要整第三方库 , 在上一篇中已经有所介绍 , 这里不讲。 关于 jszip和AS的aszip差不多一样。 这里我写了三个文件 : a.txt , b.xml , c.json 打包到一个 ziptest.zip的压缩包中。 a.txt:...

Aonaufly
2017/10/04
0
0
Egret之Webp

在runtime2.0中已经加入了webp,但是需要运行于runtime加速器.如果想以H5网站的显示运行.目前需要加入第三方库. 一,使用 : npm install egret-resource-manager -g 安装最新RES(第三方)库 二,...

Aonaufly
2017/10/25
0
0
HTML5 游戏引擎深度测评

最近看到网上一篇文章,标题叫做《2016年 最火的 15 款 HTML5 游戏引擎》。目前针对HTML5游戏的解决方案已经非常多,但谁好谁差却没有对比性资料。特意花了几天时间,针对文章中出现的12款免...

memda
2016/04/15
4.7K
8
Egret之JSZip高级应用:压缩JS

本片讲解Egret使用JSZip解析加压的js代码,然后将其还原成可执行的js代码。 一 , 先将egret库打包 : ①:在网站根目录建一个egret文件夹,在其中放入类库 ②:将egret文件夹打包成egret.z...

Aonaufly
2017/10/06
0
0
有关 Android Studio 重复引入包的问题和解决方案

随着产品功能需求的增加,我们开发的安卓项目不得不入引入越来越多的第三方库。这些三方库可能以 Jar 包的形式放置在 libs 目录下,可能以 Gradle 远程依赖的形式下载引入,也可能是以 Libr...

亦枫
2017/05/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

大数据教程(2.11):keeperalived+nginx高可用集群搭建教程

上一章节博主为大家介绍了目前大型互联网项目的系统架构体系,相信大家应该注意到其中很重要的一块知识nginx技术,在本节博主将为大家分享nginx的相关技术以及配置过程。 一、nginx相关概念 ...

em_aaron
21分钟前
0
0
Apache Directory Studio连接Weblogic内置LDAP

OBIEE默认使用Weblogic内置LDAP管理用户及组。 要整理已存在的用户及组,此前办法是导出安全数据,文本编辑器打开认证文件,使用正则表达式获取用户及组的信息。 后来想到直接用Apache Dire...

wffger
28分钟前
2
0
HFS

FS,它是一种上传文件的软件。 专为个人用户所设计的 HTTP 档案系统 - Http File Server,如果您觉得架设 FTP Server 太麻烦,那么这个软件可以提供您更方便的档案传输系统,下载后无须安装,...

garkey
32分钟前
1
0
Java IO类库之BufferedInputStream

一、BufferedInputStream介绍 /** * A <code>BufferedInputStream</code> adds * functionality to another input stream-namely, * the ability to buffer the input and to * sup......

老韭菜
35分钟前
0
0
STM 32 窗口看门狗

http://bbs.elecfans.com/jishu_805708_1_1.html https://blog.csdn.net/a1985831055/article/details/77404131...

whoisliang
昨天
0
0
Dubbo解析(六)-服务调用

当dubbo消费方和提供方都发布和引用完成后,第四步就是消费方调用提供方。 还是以dubbo的DemoService举例 -- 提供方<dubbo:application name="demo-provider"/><dubbo:registry address="z...

青离
昨天
1
0
iptables规则备份和恢复、firewalld的9个zone以及操作和service的操作

保存以及备份iptalbes规则 设定了的防火墙规则要进行保存,否则系统重启后这些规则就没有了,使用命令 ”service iptables save ” 会把设定好的防火墙规则保存到文件/etc/sysconfig/iptabl...

黄昏残影
昨天
0
0
k8s image

k8s.gcr.io/kube-apiserver-amd64:v1.11.0k8s.gcr.io/kube-controller-manager-amd64:v1.11.0k8s.gcr.io/kube-scheduler-amd64:v1.11.0k8s.gcr.io/kube-proxy-amd64:v1.11.0k8s.gcr.......

分秒
昨天
0
0
数据结构--排序

这篇博客包含了数据结构中多种的排序算法: (1)简单选择:第一趟在A[0]~A[n-1]之间找到最小的,与A[0]进行交换,之后在A[1]~A[n-1]之间进行。。。第i趟在A[i-1]~A[n-1]之间找到最小的,最后...

wangxuwei
昨天
1
0
一名3年工作经验的java程序员应该具备的职业技能

一名3年工作经验的Java程序员应该具备的技能,这可能是Java程序员们比较关心的内容。我这里要说明一下,以下列举的内容不是都要会的东西—-但是如果你掌握得越多,最终能得到的评价、拿到的薪...

老道士
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部