使用browserify创建bundle.js时,下面的示例代码会产生以下错误:
process.binding is not supported
问题1 :如何解决错误?
似乎“Browserify只会破坏某些常见的特定于Node的属性。” (我认为也可能是问题的一部分)fs模块不能在客户端上运行。
到目前为止,我尝试安装brfs:
browserify -t brfs basic.js --standalone MyLibrary > bundle.js
并安装browserify-fs
browserify -r fs:browserify-fs
但仍然出现错误
更多上下文: 我试图使用broswerify来编译bundle.js,这样我就可以在客户端运行一些任务。
我有一个有角度的网络应用程序,它可以生成一个可以下载的json输出文件。
我还有一个使用npm的基于gulp的构建框架。构建基于从Web应用程序输出的json运行。
我想连接这两个进程,以便通过应用程序触发模板。
我遇到了困难,因为许多像fs这样的软件包似乎都有客户端问题。
我不知道问题是我是否正在深入研究目前知识之外的东西,只是不使用brfs / browserify-fs来正确解决问题,或者我是否只是采用了不好的解决方案因为我想要开始。
问题2: 有没有比我正在采取的方法更好的方法?
谢谢!
basic.js
"use strict";
var gulp = require('gulp');
var sass = require('gulp-sass');
var mergeJSON = require("merge-json") ;
module.exports = MyLibrary;
function MyLibrary() {};
// WORKS
MyLibrary.prototype.dataComp = function() {
var configJson = require("./src/data/src/config.json") ;
var sourceJson = require("./src/data/src/source.json") ;
var obj1 = configJson ;
var obj2 = sourceJson ;
var result = mergeJSON.merge(obj1, obj2) ;
console.log(result) ;
}
// ERRORS
MyLibrary.prototype.sassComp = function() {
gulp.task('sass', function() {
return gulp
.src('./src/scss/*.scss')
.pipe(sass({
precision: 2
}))
.pipe(gulp.dest('./src/css'))
});
}
package.json depenencies
"dependencies": {
"browserify-fs": "^1.0.0",
"gulp": "^3.9.1",
"gulp-sass": "^3.1.0",
"merge-json": "0.1.0-b.3",
"process": "^0.11.10",
"url": "^0.11.0"
},
"devDependencies": {
"brfs": "^1.4.3",
"browserify-fs": "^1.0.0"
},