我在node.js
中使用express
:
app.post('/printUp', function(req, res) {
var multipl = new require('./multUploud').printNum(req, res);
})
我的multUploud.js中有以下内容:
var partNum = 0;
module.exports = {
printNum: function (req, res){
partNum ++;
console.log(partNum);
}
}
如果我发送了两个post命令,我看到partNum
在第一次迭代中为1,在第二次迭代中为2。
是否有为每个app.post请求创建新实例的选项,因此它会打印1和1?
答案 0 :(得分:2)
只需将partNum
作为对象的属性即可。您的multUploud.js
应该看起来像那样:
module.exports = MultiUpload;
function MultiUpload() {
this.partNum = 0;
}
MultiUpload.prototype.printNum = function (req, res) {
this.partNum++;
console.log(this.partNum);
}
然后,在你的快递帖子中:
app.post('/printUp', function(req, res) {
var MultiUpload = require('./multUploud');
var multipl = new MultiUpload();
multipl.printNum(req, res);
})