【问题标题】:.js Files Transpiled From .ts Files Don't Run In Browser从 .ts 文件转译的 .js 文件不在浏览器中运行
【发布时间】:2018-02-21 20:42:00
【问题描述】:

我正在尝试使用 h264-converter npm 包 (https://www.npmjs.com/package/h264-converter)。

它是用 TypeScript 编写的。当我运行 npm install --save h264-converter 时,我会得到一个包含 .ts TypeScript 文件的文件夹,但它还包含已为您转译的同一文件夹中的 .js Javascript 文件。

但是,它附带的 .js 文件不能在浏览器中运行。它们包含Require(...) 函数和未定义的对象,如exports,导致它们无法在浏览器中运行。简单地将这些带有 <script> 标记的 .js 文件包含在内会导致错误。我做了一些阅读并尝试使用 browserify npm 包 (https://www.npmjs.com/package/browserify) 从不支持的 .js 文件创建在浏览器中工作的 .js 文件。我跑了

browserify "C:\...\h264-converter\dist\index.js" > "C:\...\h264-converter\dist\bundle.js"

就像 browserfiy 主页上的示例一样,它似乎运行没有错误(他们的示例使用 main.js 而不是 index.js,但我认为 index.js 具有相同的目的)。它创建了 bundle.js。但是,bundle.js 仍然 不会在浏览器中运行。 bundle.js 仍然有Require(...) 函数。

如何让 h264-converter npm 包附带的 .js 文件在浏览器中运行?

如果有帮助,我可以发布 h264-converter npm 包附带的一些 .js 文件的内容。谢谢。

【问题讨论】:

标签: javascript typescript npm browserify


【解决方案1】:

npm 包

要在浏览器中使用 npm(节点样式 commonjs)包,您应该使用模块捆绑器 like webpack

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-02
    • 1970-01-01
    • 2016-04-29
    • 2018-12-06
    • 2020-01-23
    • 1970-01-01
    • 1970-01-01
    • 2011-09-30
    相关资源
    最近更新 更多