使用 browserify 创建多个对象
creating multiple objects with browserify
我正在尝试使用如下设计模式:
human.js
function Human(name){
this.name = name
this.sayName = function(){
console.log(this.name);
}
}
var a = new Human("bob");
var b = new Human("ted");
然而我并没有经常使用 browserify,我不知道如何在 browserify 中执行此操作。
我注意到当我需要 human.js 然后尝试创建一个新对象时,它似乎正在替换旧对象。
如何将 browserify 用于此设计模式?
我的其余代码大致如下:
module.exports = {
MyHuman:Human
}
在文件 1 中:
var human = require('human.js')
var ted = new Human('ted')
ted.sayName();
在文件 2 中:
var human = require('human.js')
var bob = new Human('bob')
bob.sayName();
使用 CommonJS (Browserify),您导出的内容将是您调用 require 时得到的内容(但是,请小心假设您导出的内容是单例,根据我的经验,情况并非总是如此)。所以在这种情况下,您想直接导出 Human class。然后在每个需要实例化人类的文件中,需要 class 并从那里实例化。
human.js
function Human(name) {
this.name = name;
this.sayName = function() {
console.log(this.name);
};
}
module.exports = Human;
文件 1
var Human = require('./human.js');
var ted = new Human('Ted');
ted.sayName();
文件 2
var Human = require('./human.js');
var bob = new Human('Bob');
bob.sayName();
我正在尝试使用如下设计模式:
human.js
function Human(name){
this.name = name
this.sayName = function(){
console.log(this.name);
}
}
var a = new Human("bob");
var b = new Human("ted");
然而我并没有经常使用 browserify,我不知道如何在 browserify 中执行此操作。
我注意到当我需要 human.js 然后尝试创建一个新对象时,它似乎正在替换旧对象。
如何将 browserify 用于此设计模式?
我的其余代码大致如下:
module.exports = {
MyHuman:Human
}
在文件 1 中:
var human = require('human.js')
var ted = new Human('ted')
ted.sayName();
在文件 2 中:
var human = require('human.js')
var bob = new Human('bob')
bob.sayName();
使用 CommonJS (Browserify),您导出的内容将是您调用 require 时得到的内容(但是,请小心假设您导出的内容是单例,根据我的经验,情况并非总是如此)。所以在这种情况下,您想直接导出 Human class。然后在每个需要实例化人类的文件中,需要 class 并从那里实例化。
human.js
function Human(name) {
this.name = name;
this.sayName = function() {
console.log(this.name);
};
}
module.exports = Human;
文件 1
var Human = require('./human.js');
var ted = new Human('Ted');
ted.sayName();
文件 2
var Human = require('./human.js');
var bob = new Human('Bob');
bob.sayName();