【问题标题】:Can I use '.JS' that downloaded by Node Package Manager (npm) in Browser directly?我可以直接在浏览器中使用 Node Package Manager (npm) 下载的“.JS”吗?
【发布时间】:2016-01-09 03:06:30
【问题描述】:

一般来说,我想使用一些库,但不是通过 Node CMD 例如:

我想写 TypeScript Playground 但我不想从“npm\node_modules”调用“tsc.cmd”,我想直接在浏览器中调用 tsc 编译器。

我可以直接在浏览器中使用下面的js而不是node.js命令提示符并编译任何ts文本吗?

我在 node_modules 中有这些 js:

  • tsc.js
  • typescript.js
  • typescriptServices.js
  • tsserver.js

或者

我在 Node 中安装了“beautify”包,但在“node_modules”中我有 beautify.js

我可以直接在浏览器中使用这个js文件而不是'beautify.cmd'

或者

...

一般来说,出于某些性能原因,我需要直接在浏览器中调用 node cmd 提供的功能

我可以直接在浏览器中使用 Node Packages (node_modules) 的所有 JavaScript 吗?

【问题讨论】:

标签: javascript node.js npm typescript


【解决方案1】:

最近我发现https://tonicdev.com/ 允许您从具有安装和执行 npm 模块访问权限的浏览器运行 Nodejs

【讨论】:

    【解决方案2】:

    一些包正在尽最大努力检测它们是如何加载的(在节点内部还是在浏览器内部?使用 CommonJS 或 AMD?等),但在大多数情况下,您要寻找的是 Browserify 工具:

    http://browserify.org/

    它采用 node.js 样式的包并输出一个浏览器就绪的脚本,其中所有特定于节点的 require('module') 调用都得到正确处理(如果你也可以用你自己的浏览器就绪的替代品替换一些模块需要)。

    最好有一个构建过程来处理将源代码转换为浏览器端打包脚本的任务,这样您就不必每次都手动调用browserify files.js -o output.js 命令。考虑使用gruntgulp :)

    【讨论】:

      猜你喜欢
      • 2018-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-02
      • 2016-10-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多