Upng.js: 请使用 NPM 包

创建于 2017-03-29  ·  6评论  ·  资料来源: photopea/UPNG.js

最有用的评论

不,他们没有。 您需要安装特殊的此包管理器软件 ( npm ),该软件在其自己的虚拟机 ( node.js ) 上运行并随附。 后者通常用作Web 服务器、运行桌面应用程序的平台,甚至用于通过 Arduino 或 Raspberry Pi控制物理设备

我可以看到您在代码中使用了“全局导出”模式,不再推荐使用。 你至少需要CommonJS模块,更好 - UMD或理想的ES6 模块被一些打包WebpackBrunchRollup (还有很多这些)。

为了让每个人都能读懂和欣赏代码,你应该使用 EcmaScript 语言的最新特性,然后其转换为 ES5,可能使用Babel

由于你构建的是一个库,你可能想要使用TypeScript ,它基本上是 EcmaScript 的超集,提供类型签名和编译时类型检查(TypeScript 被编译为 JavaScript,ES5 或 ES6,所以你可能或可能不要同时使用 Babel)。 即使不编写 TypeScript 的人仍然会从中受益,因为像VSCode这样的现代编辑器能够显示基于 TypeScript 类型的类型提示。

单独的主题是测试驱动开发。 我可以看到您没有为您的代码编写任何测试,这在开源社区中不再被接受。 确保选择一些测试运行程序,如MochaJasmineAva以及断言库之一: ChaiPowerAssert或 node.js 中的内置assert函数,因为您已经安装了它。 理想情况下,在每次部署之前,您应该通过KarmaBrowserStackSauceLabs上跨浏览器运行测试,以确保您的代码在任何地方都能正常工作。

如果您使用持续集成服务器进行所有这些转译、构建和测试,您将能够在 GitHub 存储库或GitHub Pages 中的自述文件中添加精美的徽章

这只是冰山一角。 欢迎来到前端开发 AD 2017。

聚苯乙烯
你也可以忽略所有这些,继续做你迄今为止所做的很棒的工作!

所有6条评论

什么是 NPM? 你认为你能做到吗?

看来我必须下载并安装一些特殊的软件,才能在“npm”中发布 UPNG.js。 当我更新我的库时,我是否必须同时在 GitHub 和 npm 上更新它,或者 npm 可以以某种方式连接到 GitHub 并下载最新版本?

你好! 对不起,我不知道你不知道 NodeJS/NPM。 NPM 是地球上最大的包/依赖项管理解决方案。 代码仍然存在于 github 上,开发人员可以更轻松地下载和使用您的代码。
这意味着:通过控制台命令安装( npm install upng
例如,通过require('upng')使用。 此外,您还想避免乱丢全局对象命名空间 ( window.upng ))。

由于此代码已发布到echojs.com ,我以为您了解

我会看看我是否能找到时间创建一个拉取请求以将其发布到 NPM,但是您应该是发布到 NPM 的人,因为您创建了该库。 文档可以在这里找到: https :

创建包以使其可用于 NPM 非常简单。
在此处查看更多信息: https :

他们有网络界面吗? 我通过 Web 界面使用 GitHub。 下载安装一些软件只是为了将 12 kB 发送到某个服务器对我来说似乎很疯狂。

不,他们没有。 您需要安装特殊的此包管理器软件 ( npm ),该软件在其自己的虚拟机 ( node.js ) 上运行并随附。 后者通常用作Web 服务器、运行桌面应用程序的平台,甚至用于通过 Arduino 或 Raspberry Pi控制物理设备

我可以看到您在代码中使用了“全局导出”模式,不再推荐使用。 你至少需要CommonJS模块,更好 - UMD或理想的ES6 模块被一些打包WebpackBrunchRollup (还有很多这些)。

为了让每个人都能读懂和欣赏代码,你应该使用 EcmaScript 语言的最新特性,然后其转换为 ES5,可能使用Babel

由于你构建的是一个库,你可能想要使用TypeScript ,它基本上是 EcmaScript 的超集,提供类型签名和编译时类型检查(TypeScript 被编译为 JavaScript,ES5 或 ES6,所以你可能或可能不要同时使用 Babel)。 即使不编写 TypeScript 的人仍然会从中受益,因为像VSCode这样的现代编辑器能够显示基于 TypeScript 类型的类型提示。

单独的主题是测试驱动开发。 我可以看到您没有为您的代码编写任何测试,这在开源社区中不再被接受。 确保选择一些测试运行程序,如MochaJasmineAva以及断言库之一: ChaiPowerAssert或 node.js 中的内置assert函数,因为您已经安装了它。 理想情况下,在每次部署之前,您应该通过KarmaBrowserStackSauceLabs上跨浏览器运行测试,以确保您的代码在任何地方都能正常工作。

如果您使用持续集成服务器进行所有这些转译、构建和测试,您将能够在 GitHub 存储库或GitHub Pages 中的自述文件中添加精美的徽章

这只是冰山一角。 欢迎来到前端开发 AD 2017。

聚苯乙烯
你也可以忽略所有这些,继续做你迄今为止所做的很棒的工作!

非常感谢您的评论。 下载、安装和学习如何使用所有这些程序似乎比我花在开发 UPNG.js 上的时间要多。 我不需要它们用于任何其他目的。 因此,我决定将这项任务留给其他人(随意在 npm 或任何其他“代码数据库”/网站上发布 UPNG.js)。

PS 我仍然认为,与想象“标准 javascript 环境”相比,您不应该想象 Node.js(数千人拥有),而是一个网络浏览器(数十亿人拥有)。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

HRK44 picture HRK44  ·  9评论

Ser-Gen picture Ser-Gen  ·  5评论

mn4367 picture mn4367  ·  16评论

peepo picture peepo  ·  19评论

funston picture funston  ·  7评论