0
我有一个特定的代码块(forEach循环),我在代码库的每个地方都会用到,只要我有一个“item”。node.js模块的特定代码块
如何将其重构为模块或全局函数,我可以随时调用该函数。
这里的背景:
Item.findById(itemid).populate('wants').exec(function(err, item){
item.wants.forEach(function(person){
person.avatar = gravatar.url(person.email, {size: 80, default: 'mm' });
});
//do some more stuff with item
});
我想,我有一个“项目”对象重新使用在其他地方这个forEach循环。我在想我传入物品对象并再次返回。
item.wants.forEach(function(person){
person.avatar = gravatar.url(person.email, {size: 80, default: 'mm' });
});
喜欢的东西:
var myLib = require('./lib/myLib');
...
item = myLib.doStuff(item);
谢谢,我只是试过这个,但是因为它是一个猫鼬的对象,有没有被允许覆盖它的特殊之处。重新赋值会导致其他属性消失'item = myLib.doStuff(item);'我通过这样做了:'myLib.doStuff(item)' - 我猜一切都是引用而不是副本。不完全确定这是为什么起作用,但确实如此。 – chovy