browserify 如何不打包公共模块,比如JQUERY?
发布于 5 年前 作者 flftfqwxf 6758 次浏览 最后一次编辑是 4 年前 来自 问答

如题:browserify 如何不打包公共模块,比如JQUERY?

11 回复

使用external bundle 例如 browserify --require jquery > bundle1.js #打包jquery browserify --external jquery index.js > index.bundle.js # 打包其他代码, 不含jquery

@magicdawn 有没有工具,可以做这个事情,而不是每次手动 去处理?? gulp-browserify??

或有没有可以watch的工具,还是自己写一个?

@magicdawn --require 主要作用是什么,官网上写的是 【A module name or file to bundle.require()】

一个文件要不包括jquery, 就是使用external , 这个external 的意思是外部的 是说不包括, 但是你外部的不能不给呀, 于是使用 – require jquery , 将jquery打包成这个外部的 bundle

我这里有个例子, https://github.com/magicdawn/browserify-demo

js/global.json 里面

{
  "jquery": "jquery",
  "./modulea.js": "a"
}

作为global.js, "./modulea.js": "a" 的意思是, 将 ./modulea.js 暴露为模块a , 然后 其他的文件, require(‘a’) 就可以了, 不用打包a , 取的是modulea.js

@magicdawn 谢谢,看了你写的DEMO,虽然还没有运行,但 个人感觉 ,如果只是前端用来做模块管理的话,复杂程度比SEAJS,requireJS要复杂得多。 另外,是直接运行 node index.js ?? 貌似运行不进来

@flftfqwxf

怎么会运行不起来呢~

npm install 呀, 我用了koa, 需要 iojs

前期复杂, 后面使用的话就很爽了

回到顶部