为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

江户川乱折腾 2021-11-04 15:12:03
对于我们可以在 Github 上找到的许多 JS 库,现在不可能通过执行以下操作直接在客户端项目中使用它们:<script src="thelibrary.js"></script>浏览器不会接受fernet.js甚至fernetBrowser.jsrequire中存在的和其他与 Node 相关的关键字。我在这里阅读了一些教程,这些教程建议安装Node(使用npm),然后browserify或者webpack还有一个转译器等,但在安装任何新软件之前,我通常确保绝对需要了解它是如何工作的。问题:要能够将 .js 使用require(例如fernetBrowser.js)转换为可直接在客户端浏览器中加载的 .js 文件,必须运行的最少命令行命令数是多少?
查看完整描述

1 回答

?
心有法竹

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


查看完整回答
反对 回复 2021-11-04
  • 1 回答
  • 0 关注
  • 141 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信