爱上撸代码的感觉:教你怎样让 TypeScript 成为你的Creator代码催化剂(Github示例项目)

自己折腾了一个 CCData,发现这样可以

export function CCData(className) {
  return function (constructor) {
    let uuid = getUUID();
    if (defined[uuid]) return definedClass[uuid];
    constructor.$super = cc.Object;
    let cls = define(className, constructor, currentMixins[uuid], void 0, {});
    declareProperties(cls, className, currentProperties[uuid], constructor, void 0);
    currentProperties = {};
    currentMixins = {};
    currentEditor = {};
    defined[uuid] = true;
    definedClass[uuid] = cls;
    return cls;
  }
}

1赞

对,这就是cc.Class不继承cc.Component的情况。

在cocos2d-js 3.9版本的项目里面用class定义场景和layer类,touch事件无法触发,不报错。改回cc.Scene.extend();的方式就没有问题。我只是在新建的HelloWorldScene上改了语法。:joy:

没有看懂你的意思?这是Creator的项目,不能用在cocos2d-js上。

C++ 转过来的,感觉typescript听好用的。 :joy:之前不知道 ctrl+w是干什么的,刚刚试了一下,有效果。

按照官方的话来说,你不要管那么多,只要学就行了,不要问为什么

TypeScript 文件放在 resources 目录下build 时会有 meta uuid 崩溃的现象。v1.6.0 Cocos Creator。这有什么方法吗?

正需要,多谢楼主

感谢楼主做出的技术支持,在楼主的帮助建议下,官方在新版本里面已经提供了 TypeScript 的更全面的支持,本文内容不作为最新教程,仅供存档和参考。如需学习请查阅官方教程:
http://www.cocos.com/docs/creator/scripting/typescript.html

写客户端逻辑,如果要我选择一门语言, 我会选择无类型语言.发明无类型语言的人是位"张三丰"式的人物.

1.5以后Creator就自带TypeScript支持了,直接在资源管理器中新建TypeScript脚本即可,现在这个帖子仅作参考。

问下,这样的MVC风格,如果我多个model,或者controllers间数据怎么交互?

这种情况我习惯用全局事件传递数据。

socket方面的呢?
我尝试把socket.io.js一丢进项目里面就报错了。

楼主,github上的项目两年没有更新了,可以更新一下吗?cocos creator 1.9.1 跑不起来了

Creator 1.5开始就内置了,不需要使用github上的项目了。

新版的VS Code 也可以了,用TS写着挺不错的

mark mark

这个帖子已经很久了,还是很感谢楼主的帮助。最近开始尝试使用TypeScript,同时也生成了uikiller的ts版本,而且又有了更多有趣想法,响应楼主的号召:爱上撸代码的感觉

2赞

我以前是做Unity3D 的,用的C#,转到Creator用Ts,简直爽翻了,都是OO编程,可能是因为之前学过js的原因,直接就能上手