Tag: browserify

pipe道subprocessstdout&标准input到浏览器在node.js&browserify

我试图将一个child_process的标准输出和标准input到浏览器并显示在一个HTML页面中。 我正在使用browserify来让node.js在浏览器上运行。 我产生child_process的代码就像这样。 var child = require('child_process'); var myREPL = child.spawn('myshell.exe', ['args']); // myREPL.stdout.pipe(process.stdout, { end: false }); process.stdin.resume(); process.stdin.pipe(myREPL.stdin, { end: false }); myREPL.stdin.on('end', function() { process.stdout.write('REPL stream ended.'); }); myREPL.on('exit', function (code) { process.exit(code); }); myREPL.stdout.on('data', function(data) { console.log('\n\nSTDOUT: \n'); console.log('**************************'); console.log('' + data); console.log('=========================='); }); 我使用browserify创build了一个bundle.js,我的html看起来像这样。 <!doctype html> <html lang="en"> <head> <meta […]

浏览器内部的JS JS模块

我有一个场景,我想从客户端导出数据到CSV。 我将有一个文本框/区域或任何用户可以input数据,然后理想情况下只需点击一下,本地CSV文件将更新与该数据。 使用服务器交互的NodeJS及其核心模块(特别是fs模块)很容易实现,但显然不是来自浏览器。 我发现某些节点模块(例如underscore )支持RequireJS在浏览器中使特定模块工作的方法。 所以对于下划线我做了这个: methods.js define(['underscore'],function(_) { var Methods = { doSomething: function() { var x = _.size({one: 1, two: 2, three: 3, xuz: 3}); alert(x); } }; return Methods; }); common.js requirejs.config({ baseURL: 'node_modules', paths: { underscore: 'underscore/underscore', } }); require(['methods'], function(y){ y.doSomething(); }); 的index.html <script data-main="common" src="require.js"></script> <script> require(['common'], function() { […]

在包含Browserify的Node JS项目中包含JQuery Mobile

我正在写一个Node JS应用程序,我需要jQuery UI和jQuery Mobile。 我正在使用Browserify将模块打包到单个js文件中。 我有以下代码在我的项目中包含jQuery和jQuery UI。 var jQuery = require('jquery'); require('jquery-ui-browserify'); 它工作。 当我尝试添加jQuery移动时出现问题,要么使用require: require('./lib/jquery.mobile-1.4.0.min.js'); 或者使用脚本标签 <script src="/lib/jquery.mobile-1.4.0.min.js" type="text/javascript"></script> 我犯了同样的错误: “Uncaught TypeError:无法设置属性”移动“的未定义”。 我明白,我得到这个错误,因为jQuery手机在窗口中寻找jQuery对象,并没有find它,但如何解决它? npm上没有jQuery移动模块。

在Windows上使用karma-browserify找不到模块错误

我正在尝试使用Karma,Karma-Jasmine和Karma-Browserify在Angular / Browserify项目上设置unit testing。 我在Windows机器上,以供参考。 karma-cli在我的全局npmpath上, karma , karma-jasmine , karma-browserify和browserify都是本地npm安装,使用-D 。 我试图拉入一个单一的spec文件,如下所示: var PhoneListCtrl = require('../../../public/js/app/controllers/phone-list'); describe('PhoneListCtrl', function() { var scope, ctrl; beforeEach(function() { scope = {}; ctrl = new PhoneListCtrl(scope); }); it('should create "phones" model with 3 phones', function() { expect(scope).not.toBe(undefined); }); }); 我每次都得到以下错误: Uncaught Error: Cannot find module 'Cc/gGH' 克隆下面的回购,安装因果和所有插件,并试图运行他们的示例testing套件后,我得到了完全相同的错误: https://github.com/xdissent/karma-browserify https://github.com/waye929/angular-browserify […]

TinyMCE吞咽configuration

我正在构build一个Web应用程序,我想使用TinyMCE。 我正在使用gulp和browserify。 我已经通过npm下载了TinyMCE,而且我已经在我的app.js文件中要求它,并运行gulp命令,但是我得到了这个错误Failed to load: root/js/themes/modern/theme.js 。 我认为这是因为TinyMCE需要其文件夹中的其他文件。 我的问题是如何configurationTinyMCE来searchnode_modules / tinymce文件夹中的这些文件。

gulp.js + browserify:dynamic生成特定于开发的文件

我有一个应用程序,它有一些特定于开发的debugging代码。 目前,所有的开发代码都由文件顶部的一个名为dev的variables来保护。 这里是我的应用程序的一个例子: var dev = true; if (dev) { console.log("Hello developer"); } else { console.log("Hello production"); } 当我去部署我的应用程序时,我必须手动将开发variables窗体true更改为false。 这很糟糕。 我正在从手动编译迁移到gulp.js,我希望能够清楚地解决这个开发与生产构build问题。 我正在考虑以下内容: // Inside main.js var dev = require('./isdev'); if (dev) //… // Inside isdev.js: module.exports = true; 现在,当我为生产构build时,而不是手动将dev标志设置为false ,我想从module.exports = true;replaceisdev.js module.exports = true; 到module.exports = false; 。 我的具体问题是, 如何使gulp自动化,使得gulp development生成一个dev = true的文件,并且用dev = […]

使用Browserify将node.js应用程序捆绑到单个文件

我想分发我的node.js应用程序作为一个单一的js文件。 该应用程序非常简单,但依赖于一些库。 Browserify似乎很好地捆绑了npm依赖关系。 然而,应用程序也依赖于fs内置的文件系统库,不幸的是它的签名似乎没有加载。 例如下面的代码给出undefined is not a function错误。 var fs = require('fs') fs.readFileSync(file, 'utf8'); 我明白,Browserify的主要目的是将基于CommonJs的应用程序带到浏览器。 但是我想知道是否有什么办法可以使编译器回退到内置库的默认require全局函数。

使用browserify,未捕获的ReferenceError:函数未定义

我在http://browserify.org/尝试示例,并尝试进行函数调用,如下所示: 我的html是: <!DOCTYPE html> <html> <head> <title>Test Browserify</title> <script src="bundle.js"></script> </head> <body> <button onclick="hello()">test</button> </body> </html> 和我的JavaScript是: var unique = require('uniq'); var data = [1, 2, 2, 3, 4, 5, 5, 5, 6]; console.log(unique(data)); function hello(){ alert("here"); } 我做了browserify main.js -o bundle.js,所以我可以使用require成功。 但是当我点击button,我有错误: “未捕获的ReferenceError:你没有定义” 任何build议将不胜感激!

在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环境中使用这些包及其内容? (授予代码不做任何浏览器特定的)