博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
kmdjs指令大全
阅读量:6756 次
发布时间:2019-06-26

本文共 1688 字,大约阅读时间需要 5 分钟。

调试

通过下面方式,可以输出kmdjs声称的类:

在kmd.js后面加上?debug可以在console面板查看到依赖关系和输出的class。

依赖可视化

通过下面方式,可以输出使用canvas绘制的项目依赖关系图:

依赖关系,甚至是循环依赖在图中都能体现出来。

合并js

通过下面方式,可以把js合并,该js文件可直接代替kmdjs,让项目正常跑起来:

kmdjs.config中的namespace会被编译成如下的js代码:

cfgtns

分离js

通过下面方式,可以把js分离到每个文件中,并自动下载:

压缩打包

通过下面方式,可以把js分离到每个文件中,并自动下载:

这样的话,js文件会经过uglify2压缩打包下载。

模块抽取

很多时候,一个kmd项目需要使用另外一个kmd项目中的某些模块,这样的话需要抽取其中的模块。

kmdjs.config({    name: "HelloKanvas",    baseUrl: "js",    classes: [          { name: "Kanvas.DisplayObject" },          { name: "Kanvas.Bitmap" },          { name: "Kanvas.Txt" },          { name: "Kanvas.Stage" },          { name: "Kanvas.Container" },          { name: "Kanvas.Matrix2D" },          { name: "Kanvas.Shape.Circle" },          { name: "Kanvas.Sprite" },          { name: "Kanvas.Loader" },          { name: "Kanvas.RAF" },          { name: "Kanvas.UID" },          { name: "Kanvas.UI.Button" },          { name: "Kanvas.UI.ShapeButton" },          { name: "Kanvas.TWEEN" },          { name: "Kanvas.Shape" }    ],    build: [           "Kanvas.DisplayObject",           "Kanvas.Bitmap"    ]});

如上面的的代码,会自动以kmdjs.exec(...)的形式build出DisplayObject和Bitmap以及他们依赖的模块。

抽取模块的使用

这里假定抽取出来的模块名字叫做Kanvas.js,再另外的kmd项目中的kmdjs.config如下配置:

kmdjs.config({    name: "KanvasGame",    baseUrl: "js",    deps: [        {            url: "Kanvas.js",            classes: [                  { name: "Kanvas.DisplayObject" },                  { name: "Kanvas.Bitmap" }            ]        }    ],    classes: [         { name: "KanvasGame.Util" },         { name: "KanvasGame.MainPanel" },         { name: "KanvasGame.Game" }    ]});

不管是合并、打包压缩、分离等,最后kmdjs都会拉平所有依赖,补全所有namespace,所以kmdjs是支持循环依赖,并且告诉人们,世界上根本没有循环依赖那回事儿。

kmdjs项目地址:

待续...

转载地址:http://iegho.baihongyu.com/

你可能感兴趣的文章
textField限制输入整数0-100
查看>>
MySQL调优
查看>>
tableview 没有数据显示的时候,插入无数据的view
查看>>
数据结构与算法学习(一)
查看>>
ns3内核解析记录
查看>>
基于lnmp的Discuz论坛
查看>>
Xcode中的 编译过程以及编译器
查看>>
OSV配合windows 2008 r2 NPS 搭建802.1X认证环境
查看>>
01-Swift基础语法
查看>>
【MySQL】无法进入mysql connections问题
查看>>
再说TCP神奇的40ms
查看>>
eclipse hibernate配置文件(*.hbm.xml)加上自动提示功能
查看>>
extjs 枚举类型
查看>>
五、Hotspot中高效的垃圾回收算法实现
查看>>
发送邮件常见的错误和解决方法
查看>>
机器学习服务器 PredictionIO 脱颖而出
查看>>
mysql不能连接远程mysql服务器
查看>>
Windows 8.1 重复数据删除——概念(一)
查看>>
iptables防火墙高级应用
查看>>
python运维-Socket网络编程
查看>>