Articles of browserify

在NodeJS中同步less编译

我正在尝试为Browserify编写一个转换脚本,允许我使用require() .less文件。 转换将它们编译为CSS,然后将该缩小的CSS封装在一个将CSS附加到页面的小函数中。 我的麻烦是, 主LESS模块是asynchronous的,这似乎不是与转换脚本一起工作: lessify / index.js (直接从node-underscorifybuild模) var less = require('less'); var cleanCSS = require('clean-css'); var through = require('through'); module.exports = function(file) { if (!/\.css|\.less/.test(file)) { return through(); } var buffer = ""; return through(function(chunk) { return buffer += chunk.toString(); }, function() { compiled = buffer; if (/\.less/.test(file)) { compiled = less.render(compiled, function(e, […]

直接在node.js中使用browserify输出包

好的,为node.js编写的模块可以与browserify组合成bundle。 但为防万一我只有一堆由browserify而不是源创build的包 ,是否还有可能在浏览器之外“需要”或以其他方式在node.js环境中使用这些包及其内容? (授予代码不做任何浏览器特定的)

从另一个脚本运行节点包+参数

我发现自己在一个情况下,我不得不运行一个单一的命令,例如node compile.js 该.js文件需要运行以下 browserify -t jadeify client/app.js -o bundle.js 所有的依赖关系都已经安装好了,通过在CLI中运行这个命令就可以正常工作,只需要弄清楚如何从节点脚本中执行它。 我们在package.json里面也有一些类似的东西 "script" : [ "compile": "browserify -t jadeify client/app.js -o bundle.js" ]当你执行cd /project && npm run compile时,这个function完美无缺,但是不能通过exec 谢谢

浏览捆绑电子应用程序的主要进程文件

我正在构build一个电子应用程序,目前使用browserify渲染器(网页)文件像任何其他的JavaScript前端。 我也想用browserify捆绑主要的进程文件。 但是,bro​​wswerify无法find像剪贴板,ipc,浏览器窗口,应用程序等模块内置的电子… 在我的main.js文件中,它是电子应用程序的入口点。 我有: const ipc = require('ipc'); const clipboard = require('clipboard'); const BrowserWindow = require('browser-window'); const app = require('app'); const yargs = require('yargs'); const yargs会正常加载,因为它在node_modeuls文件夹中,而browserify可以解决这个问题。 然而,其他四个项目不能被browserifyfind,因此失败了我的构build。 [11:49:17] Finished 'development' after 17 ms Error: Cannot find module 'ipc' from '<path>' Error: Cannot find module 'clipboard' from '<path>' Error: Cannot find module 'browser-window' from '<path>' […]

browserify-shim在var范围内不导出隐式全局variables

根据browserify-shim文档,可以通过在package.json使用以下语法来指定哪些全局variables需要通过传统模块公开: { "browserify-shim": { "legacyModule": "myVar" } } 我希望传统模块可以通过require('legacyModule')和window.myVar 。 根据我的经验,如果我尝试填充的非commonjs模块使用window.myVar = x或只是myVar = x ,则该模块将全局公开,并且可通过require()按预期方式获得。 但是 ,当传统模块使用var myVar = x ,这是因为模块只能通过require('legacyModule')而不是通过window.myVar 。 browserify-shim文档指出: 此外,它处理以下真实世界的边缘情况: 在脚本级别声明一个var foo = …并假定它被附加到window对象的模块。 因为他们唯一的办法是在全球范围内 – “啊哈,不…?

找不到模块'browserify'

我得到这个错误: 错误:找不到模块'browserify' 当我把这一行添加到我的app / server.js文件中时: var browserify = require('browserify'); 现在我还是新的Node,但我想我已经正确安装,通过 npm install -g browserify 根据他们的文档 。 我很确定这是检查我的全局模块的命令: D:\Websites\MySite> npm ls -g C:\Users\Mark\AppData\Roaming\npm ├─┬ browserify@1.17.2 │ ├─┬ buffer-browserify@0.0.4 │ │ └── base64-js@0.0.2 它在那里列出了browserify。 那么为什么我不能require呢?

如何使用Browserify指定自定义searchpath?

我有一个大型项目,由数百个源文件组成的几个文件夹。 像这样的东西: src/ AAA.js subdir/ DDD.js 我想能够指定非相对path的依赖关系。 例如,在DDD.js我想这样做: var AAA = require('AAA'); 而不是这个: var AAA = require('../AAA'); 我如何用Browserify实现这一目标?

与browserify gulp:找不到模块src / js / main.js

我正在尝试使用Gulp和browserify来build立一个基本的版本,但在运行默认任务时仍然看到这个错误: Error: Cannot find module 'src/js/main.js' from '/Users/ben/dev/git/myapp/' gulpfile.js var gulp = require('gulp'); var browserify = require('browserify'); var del = require('del'); var source = require('vinyl-source-stream'); var paths = { main_js: ['src/js/main.js'], js: ['src/js/*.js'] }; gulp.task('clean', function(done) { del(['build'], done); }); gulp.task('js', ['clean'], function() { browserify(paths.main_js) .bundle() .pipe(source('bundle.js')) .pipe(gulp.dest('./build/')); }); gulp.task('watch', function() { gulp.watch(paths.js, ['js']); }); […]

“错误:path必须是string”(v5.10.0)

我有这个文件(一大堆的JS文件的一大堆),过去几天前使用browserify(5.10.0),现在它不。 这就是我正在运行的: $ browserify index.js -o dist/out.bundle.js 输出是: Error: path must be a string at /usr/local/lib/node_modules/browserify/node_modules/resolve/lib/async.js:15:16 at process._tickCallback (node.js:419:13) 任何人都知道是什么原因造成的 有没有一种方法,我可以debugging这个试图找出什么困扰browserify? 干杯

Browserify错误结束吞噬观察任务

我在我的gulpfile.js中有以下设置: gulp.task('browserify', function() { browserify(config.paths.browserifyEntry) .transform(reactify) .bundle() .pipe(source('master.js')) .pipe(gulp.dest(config.paths.dist)) //.pipe(connect.reload()); }); gulp.task('watch', function () { gulp.watch(config.paths.components, ['browserify']); gulp.watch(config.paths.sassSource, ['sass']); }); 这一切都工作完美,直到我写代码导致浏览错误。 这经常发生,因为我正在编辑一个文件中的代码,这个文件依赖于我还没有在另一个文件中做出的更改,并将错误浏览出来。 问题是,当浏览错误结束了观看任务。 我会期望,当浏览错误,它只是没有完成它的任务,但手表将继续,所以当我做了其他更改,这将允许browserify成功运行它会这样做。 这是有问题的做出更改,然后重新加载浏览器,并发现它不能工作,只是发现由于检查错误,当你的代码是在一个错误的状态观察过程结束。 是否有办法吞下该错误,以便它不会停止监视过程? 还是有另一个NPM包,观看文件,并不会被浏览错误绊倒?