【问题标题】:browserify with noparse=true - how it worksbrowserify with noparse=true - 它是如何工作的
【发布时间】:2015-02-16 09:13:09
【问题描述】:

我想问一下使用 noparse 选项设置为 true 的 browserify 的目的是什么(或者 browserify 的工作原理)。例如:

  • 如果browserify根本不解析文件,是不是就找不到require语句了?
  • 如果没有找到require语句,那么如何强制代码加载模块?例如,我有 toastrjQuerytoastr 需要 jQuery。但是当我使用 browserify 创建一个 noparse 设置为 true 的包时,我将两个文件都添加到了这个包中:

var bundler = browserify(); bundler.add('jquery.js'); bundler.add('toastr.js'); bundler.bundle();

然后我得到错误,没有找到 jQuery 模块。

【问题讨论】:

  • 请在您的示例中显示您对noParse 的用法。还请展示一个 toastr 如何需要 jQuery 的示例。

标签: browserify


【解决方案1】:

通常,当您使用 browserify 捆绑文件时,它会解析文件以进行 require() 调用,因此它可以构建依赖关系图并捆绑所需的文件。 noParse 选项的目的是在您不需要或不需要时跳过该解析。例如,如果您正在捆绑一个像 jQuery 这样的大型库文件,并且您知道它不包含任何需要处理的 require() 调用,那么如果您 noParse 该文件将节省捆绑时间。此外,目前在制作新捆绑包时很难require() 以前浏览器化的捆绑包。在这种情况下,您有时可以通过为之前浏览器化的捆绑包设置 noParse 来解决问题。

如果browserify根本不解析文件,是不是就找不到require语句了?

是的。

【讨论】:

    猜你喜欢
    • 2016-12-13
    • 2023-03-20
    • 1970-01-01
    • 2012-08-03
    • 1970-01-01
    • 2013-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多