Tag: browserify

对象#<Readable>在使用Gulp + Browserify时没有方法“写入”

当遵循Gulp.js存储库中的示例配方时 。 我收到一个错误: [12:27:31] Using gulpfile C:\GH\riot-tag-build\Gulpfile.js [12:27:31] Starting 'browserify'… _stream_readable.js:602 var written = dest.write(chunk); ^ TypeError: Object #<Readable> has no method 'write' at write (_stream_readable.js:602:24) at flow (_stream_readable.js:611:7) at _stream_readable.js:579:7 at process._tickCallback (node.js:442:13) 我试图修改源代码以符合我的要求,这是我尝试运行没有运气的Gulpfile。 var gulp = require('gulp'); var browserify = require('browserify'); var riotify = require('riotify'); var transform = require('vinyl-transform'); var buffer = require('gulp-buffer'); […]

browserify外部与排除有什么区别?

我正在使用browserify并试图让它跳过浪费时间,包括或parsingjQuery和其他require通过CDN加载的文件。 我应该使用bundle.exclude('jquery')还是bundle.external('jquery') ? 有什么不同? 他们的输出似乎是相同的,而且我不清楚文档: b.external : https : //github.com/substack/node-browserify#bexternalfile 防止文件被加载到当前包中,而是从另一个包中引用。 如果文件是一个数组,文件中的每个项目都将被外化。 如果文件是另一个捆绑包,则捆绑文件中的捆绑包将读取该捆绑包的内容并从当前捆绑包中排除该内容。 b.exclude : https : //github.com/substack/node-browserify#bexcludefile 防止文件中的模块名称或文件出现在输出包中。 如果你的代码试图要求()该文件,它会抛出,除非你提供了另一种机制来加载它。

browserify如何使Node.js模块在浏览器中工作?

我真的无法理解在browserify后面的一些工作。 当使用纯JavaScript模块时,将其转换为浏览器代码似乎“容易”,即使有很多依赖关系。 但是,浏览器做更多: 许多不做IO的npm模块只能在浏览完成后才能工作。 其他人需要更多工作。 许多节点内置模块已被封装在浏览器中工作,但只有在明确require()或使用其function时。 当你需要()任何这些模块时,你将得到一个浏览器特定的垫片。 然后再次: process.nextTick(),__dirname和__filename节点主义工作 获取节点核心库事件,stream,path,url,assert,buffer,util,querystring,http,vm和crypto的浏览器版本 所以… process.nextTick() ,浏览器内的__dirname …甚至http ? 这对我来说没有意义…如何__dirname应该在浏览器内工作?

节点/ NPM:一个npm包可以暴露多个文件吗?

我为Web开发做了一个JS库,它由几个模块组成,这些模块构build了多个分发版本。 当它通过cdn或者使用Bower分发的时候是很好的。 但是现在我试图用NPM发布它,以便可以使用Browserify进行消费。 我的问题是如何静态显示多个主文件,以便它们可以被Browserify使用。

从gulp中使用browserify时如何暴露“要求”浏览器?

当我有一个文件x.js,看起来像这样: x.js module.exports = function (n) { return n * 111 } 我从命令行运行browserify就像这样: browserify -r ./x.js > bundle.js 我得到一个看起来像这样(粗略)的输出文件: require=(function e(t,n,r){function …… ./App.jsx":[function(require,module,exports){ module.exports=require('0+DPR/'); },{}]},{},[]) 然后在我的浏览器代码中,我可以这样做: <html> <head> <title>React server rendering example</title> <script src="static/bundle.js"></script> </head> <body> Welcome to the React server rendering example. Here is a server-rendered React component: <div id="53a442ff8b39d"></div><script> var x = require('./x.js'); […]

如何用茉莉花和browserify进行unit testing?

任何最好的方式来运行浏览器风格的代码茉莉花HTML记者? 我也希望能够用phantomjs来运行这个headless,因此需要HTML记者。

如何处理非SPA使用的项目级捆绑?

我正在学习browserify,我正在尝试做两件基本的事情: 转换(通过填充)非CommonJS模块,便于使用和依赖性跟踪 捆绑项目特定的库 我发现了一个如何做到这一切的工作stream程,并通过Gulp实现了自动化。 这工作,并产生正确的输出,但我很好奇,如果它可以变得更简单。 似乎我必须在基于项目的包上重复大量的configuration。 这是一个工作的例子: 的package.json 无效的评论添加澄清 { //project info and dependencies omitted //https://github.com/substack/node-browserify#browser-field "browser": { //tell browserify about some of my libraries and where they reside "jquery": "./bower_components/jquery/dist/jquery.js", "bootstrap": "./bower_components/bootstrap/dist/js/bootstrap.js" }, "browserify": { //https://github.com/substack/node-browserify#browserifytransform "transform": [ "browserify-shim" ] }, "browserify-shim": { //shim the modules defined above as needed "jquery": { "exports": "$" […]

Browserify的自定义依赖项名称不起作用

我正在尝试使用内存stream来浏览browserify的自定义依赖项名称。 我使用内存stream的原因是因为此代码注定要在将接收多个“文件”作为input的AWS Lambda内部运行,并且不会通过文件系统提供给lambda。 根据https://github.com/substack/node-browserify的文档,似乎这应该是可能的: b.require(文件,select) 文件也可以是一个stream,但你也应该使用opts.basedir,以便相对的要求将是可parsing的。 使用opts的expose属性来指定一个自定义的依赖项名称。 require('./ vendor / angular / angular.js',{expose:'angular'})启用require('angular') 码: const browserify = require('browserify') const path = require('path') const File = require('vinyl') const jsIndex = new File({ file: path.resolve('index.js'), contents: new Buffer('var two = require("./two")')}) const jsTwo = new File({ file: path.resolve('two.js'), contents: new Buffer('console.log("Hello from two.js")')}) browserify({ entries: [ jsIndex […]

在因子束的部分束上进行一些操作

我正在用browserify和factor-bundle来使用gulp。 我有以下代码: b = browserify({ entries: [ 'a.js', 'b.js'], plugin: [ [ 'factor-bundle', { outputs: [ 'build/a.js', 'build/b.js' ] } ] ] }) .bundle() .pipe(source('bundle.js')) .pipe(buffer()) .pipe(gulp.dest('/build/common')); 我想在这个parial bundles('build / a.js'和'build / b.js')上进行一些操作(比如uglify,bundle-collapser或其他工作)。 我尝试使用factor-bundle页面上描述的方法: b.plugin('factor-bundle', { outputs: [ write('x'), write('y') ] }); function write (name) { return concat(function (body) { console.log('// —– ' + name […]

添加bootstrap.js到browserify?

所以我想弄清楚如何做到这一点? 我通过凉亭下载了bootstrap-sass,并将bootstrap javascript添加到了一个垫片中。 有几件事让我感到困惑,bootstrap.js文件看起来像这样。 //= require bootstrap/affix //= require bootstrap/alert //= require bootstrap/button //= require bootstrap/carousel //= require bootstrap/collapse //= require bootstrap/dropdown //= require bootstrap/tab //= require bootstrap/transition //= require bootstrap/scrollspy //= require bootstrap/modal //= require bootstrap/tooltip //= require bootstrap/popover 这是一种自我解释,但同时还是令人困惑的,我是否会这样评论呢? 当我添加到引导程序shim中时,是否只包含bootstrap.js文件,还是应链接到所需的所有文件? 为了避免黑客入侵(我将在此期间进行),我想尝试获取有关如何将bootstrap.js包含到browserify中的信息。 编辑:我想我可能只需要concat所有我需要的文件,并包括该脚本,因为当我浏览bootstrap.js我刚刚得到上述。 我会尝试没有评论,那么如果失败,我会连接所有的脚本到一个文件,看看会发生什么:) 编辑:嗯看起来像concat理论的作品! 唯一的事情是jQuery,看看。 ; jQuery = global.jQuery = require("c:\\wamp\\www\\mysite\\app\\client\\requires\\jquery\\js\\jquery.js"); /* ======================================================================== […]