我想使用lodash和underscore.string,但在项目中也需要下划线。下划线seems to have a method called _.mixin to handle this operation。
我将mixins放在我的lib/mixins.js
目录中,以便首先加载它。
_.mixin(lodash); // loads lodash
_.mixin(s.exports()); // loads underscore.string
但是,当我打开meteor shell
并执行console.dir(lodash)
和console.dir(_)
时,我希望下划线包含与lodash相同的所有方法,但事实并非如此。它似乎只是简单的下划线。
如何使用meteor管理mixins?
答案 0 :(得分:0)
我没有尝试过使用lodash,但经常使用mixins。
正如您所做的那样,我也将它们放在lib/mixins.js
我的包含例如以下代码
// extended functions
function isDefined(obj) {
return obj !== void 0;
};
// bring them into scope of underscore
_.mixin({ 'isDefined': isDefined })
这不依赖于流星而是强调。
我想,lodash不会返回一个valib对象列表。
应该是这样的:
_.mixin({ 'name': function, ... });
对于字符串我想你应该调用
_.mixin(_s.exports());
这可能是一个非常有用的来源:http://blog.falafel.com/the-lo-dash-on-underscorejs-and-strings/
答案 1 :(得分:0)
我有同样的问题,在某些时候意外地失去了mixin。
因此,我安装了lodash
代替或强调
meteor add erasaur:meteor-lodash
然后我把我的mixin描述文件放在某处,(在我的例子中是/lib/moreUnderscore.js
)包含我的函数
lodash.mixin({ 'something': function(){ ... } })
当然,使用时间是lodash.something
,而不是_.something