Node.js 如何在browserify编程api中忽略库
假设以下代码位于Node.js 如何在browserify编程api中忽略库,node.js,backbone.js,browserify,Node.js,Backbone.js,Browserify,假设以下代码位于bundler.js中,跟踪entry.js会导致var B=require('backbone')(主干是按照package.json中的声明安装的依赖项) 执行此绑定器将生成一个包含原始主干源的流。基于browserify的,我希望它能一起跳过主干。通过阅读源代码,我预计以下内容可能会起作用: var browserify = require('browserify'); var bundle = new browserify({ noParse: ['backbon
bundler.js
中,跟踪entry.js
会导致var B=require('backbone')代码>(主干是按照package.json
中的声明安装的依赖项)
执行此绑定器将生成一个包含原始主干源的流。基于browserify的,我希望它能一起跳过主干。通过阅读源代码,我预计以下内容可能会起作用:
var browserify = require('browserify');
var bundle = new browserify({
noParse: ['backbone']
});
bundle.add('entry.js');
bundle.bundle();
虽然backbone
源代码仍然显示在流输出中
在这个api应用程序中,是否可以使用--noparse=FILE
作为配置选项?正如您可以看到的那样,命令行上提供的--noparse
选项被传递给browserify({})
调用
因此,为了告诉browserify不要解析jquery和three.js,您必须传递jquery和three.js文件的完整路径
例如:
browserify({
noParse: [
require.resolve('./vendor/jquery'),
require.resolve('./vendor/three')
]
})
.require(require.resolve('./entry.js'), { entry: true })
.bundle();
这将使browserify忽略jquery,然后可以直接将jquery添加到index.html上。我非常感谢对源代码的引用。我实现了一个类似的块,但是在所有大文件(jQuery、主干、Lodash)上有无noParse的解析时间是相同的:~15秒。对我来说,这表明这些文件确实仍在解析中,但我无法验证任何文件是否真的有效。我最后添加了console.log(文件)在var parts=file.split(“/node\u modules/”)前面的node\u modules/browserify/index.jsglobalTr
函数中的code>代码>行。它帮助我意识到我使用了错误的路径来处理我想忽略的文件。我希望browserify有一个更详细的--verbose
模式。你找到解决方案了吗?也许再多解释一点?这对我很有用,谢谢,例如:browserify({entries:['./js/index.js']})。ignore('backbone')。ignore('jquery')。ignore('下划线')chart.js的更多例子就是这样做的
browserify({
noParse: [
require.resolve('./vendor/jquery'),
require.resolve('./vendor/three')
]
})
.require(require.resolve('./entry.js'), { entry: true })
.bundle();
var browserify = require("browserify")
browserify({entries: ['./src/client/app.js']})
.ignore('jquery')