你想在 Creator 中使用哪些 npm 包?

Cocos Creator 自 v3.0 版本开始支持 npm 包的使用,为了更好融入 npm 生态并放眼未来,Creator 制定了一套详(fu)尽(za)的 模块规范 · Cocos Creator

这套模块规范在极大程度上参考了 Node.js,因为毕竟 npm 主要是 Node.js 包管理器。

令人头痛的是,npm 上的包五花八门:

  • 有些是专门为 Node.js 编写的,其他任何环境(包括 Creator)用不了。

  • 有些提供了通用版本(一般来说,作者会说是浏览器也能用),但包的入口并没有指向该版本。

  • 有些包将其通用版本暴露了出来,但是依赖打包工具理解 package.json 中的某些字段,例如 module, browser 等。Cocos Creator 永远不会依赖打包工具

  • 许多包的模块是 CommonJS 模块,但你知道的,Creator 对 ES 模块的支持性最好。

有鉴于此,我们在尝试做一个类似于 caniuse 的“信息收集地”,用于表明某个 npm 包是否能在 Cocos Creator 中使用,如果能,怎么用?

这个DEMO 项目(https://cutt.ly/CQZuV4q)在非常非常非常非常初级的阶段,我们需要先看来自社区的反馈;本贴就是一个领头话题。

所以,你想用哪些 npm 包?你遇到了怎么样的使用问题? :grinning:

21赞

我不想用一个npm包 太多依赖包了 真不爽

JSZip
whatwg-fetch

protobuf crypto-js pako

2赞

你好,你所反馈的包都已经收录在 https://cutt.ly/CQZuV4q

你好,除了 protobuf 外,你所反馈的包都已经收录在 https://cutt.ly/CQZuV4q

不过 protobuf 我们有单独的教程,可以参考 https://docs.cocos.com/creator/3.2/manual/zh/scripting/modules/example.html

3赞

https://cutt.ly/CQZuV4q 怎么打不开了

顺便说下那些个包都大概有什么功能。。

async

这个方向是对的,生态要建立起来,就要有自己的包管理器。
原则就是这个包从官方包管理器下载了,就能用,那就很 nice 了。

另外官方插件管理也有类似的问题,感觉少了版本控制,从商店下载,只是下一个 zip 包,升级不太方便。

1赞

这个好,mark下,发现自己用到的都有包含了

zlibjs

socket.io

1赞

我就想问问能用啥代替 __dirname 和 __filename

打不开地址

为什么要这么做???

我也打不开

msgpackr
可用的最高版本是1.2.11
之后的新版本都不能用了

grpc不知道可不可以

有限状态机 xstate https://github.com/statelyai/xstate star 17.8k