对于我们可以在 Github 上找到的许多 JS 库,现在不可能通过执行以下操作直接在客户端项目中使用它们:<script src="thelibrary.js"></script>浏览器不会接受fernet.js甚至fernetBrowser.jsrequire中存在的和其他与 Node 相关的关键字。我在这里阅读了一些教程,这些教程建议安装Node(使用npm),然后browserify或者webpack还有一个转译器等,但在安装任何新软件之前,我通常确保绝对需要了解它是如何工作的。问题:要能够将 .js 使用require(例如fernetBrowser.js)转换为可直接在客户端浏览器中加载的 .js 文件,必须运行的最少命令行命令数是多少?
1 回答
![?](http://img1.sycdn.imooc.com/533e4c7b00013f3c02400205-100-100.jpg)
心有法竹
TA贡献1866条经验 获得超5个赞
在您的示例中,该文件已准备好在浏览器环境中使用,因为它是使用 browserify 构建的,以便复制所有库并将它们映射到它们的路径(例如:)'crypto-js/aes'。Browserify 还添加了一些样板代码,使浏览器能够使用 CommonJS 语法(require和module.exports)。
因此,要回答您的问题,为了使用 CommonJS 导入从文件创建浏览器就绪包,要运行的最少命令数是一个,因为唯一要执行的任务是将代码及其依赖项捆绑到一个文件中(+ 还安装依赖项):
npm i -g browserify # once for all
npm i
browserify -s fernet fernet.js > fernetBrowser.js
或者,对于生产就绪文件,您还可以使用压缩器,例如Terser,以便提供可能较小的 JavaScript 文件(并同时混淆您的代码)。
如果有多个 JS 文件要打包,这里有一个答案:Browserify multiple files into a single bundle
添加回答
举报
0/150
提交
取消