生成客户端即用型 Javascript 代码的命令数量最少?



对于我们可以在 Github 上找到的许多 JS 库,现在不可能通过执行以下操作直接在客户端项目中使用它们:

<script src="thelibrary.js"></script>

浏览器不会接受 fernet.js 甚至 fernetBrowser.js 中都存在的require和其他与节点相关的关键字。

我在这里阅读了一些教程,建议安装Node(带npm(,然后是browserifywebpack,还有转译器等,但在安装任何新软件之前,我通常会确保绝对需要它来很好地理解它是如何工作的。

问:为了能够将使用require(例如 fernetBrowser.js(将.js转换为可直接在客户端浏览器中加载的.js文件,必须运行多少命令行命令?

在您的示例中,该文件已准备好在浏览器环境中使用,因为它是使用 browserify 构建的,以便复制所有库并将它们映射到它们的路径(例如:'crypto-js/aes'(。Browserify还添加了一些样板代码,使浏览器能够使用CommonJS语法(requiremodule.exports(。

因此,要回答您的问题,为了使用 CommonJS 导入从文件创建浏览器就绪包,要运行的最少数量的命令是一个,因为唯一要执行的任务是将代码及其依赖项捆绑到单个文件中(+也安装依赖项(:

npm i -g browserify  # once for all
npm i
browserify -s fernet fernet.js > fernetBrowser.js

或者,对于生产就绪的文件,您还可以使用缩小器,如 Terser,以便提供更小的 JavaScript 文件(并同时混淆您的代码(。

如果要捆绑多个JS文件,这里有一个答案:将多个文件浏览器化为单个捆绑包

最新更新