从Underscore切换到Lodash

时间:2015-08-30 14:27:02

标签: backbone.js underscore.js marionette lodash

我刚刚开始支持巨大的Backbone和Marionette应用程序。目前使用的是Underscore,版本是1.7.0。

我想切换到Lodash最新版本,以利用我今天从其他帖子中学到的新功能,_.has()的深度搜索。我也在使用RequireJS

切换到Lodash最安全的方法是什么?我

1. bower install lodash
2. update require.confg

    "underscore": "../components/underscore/underscore",
    "underscore.string": "../components/underscore.string/lib/underscore.string",

    and update the values to point to `lodash` paths but keep the property names?

这是一个可能与Lodash合作的例子。这只是一个例子。

convertModels: function convertModels() {
  _.each(this.models, _.bind(function (model) {
    model = this.convertItem(model);
  }, this));
},

这篇文章也是关于“我是否需要更改一些Underscore代码”或者Lodash能够处理和生成相同的输出。或者我只需要检查应用程序,看看会发生什么?

1 个答案:

答案 0 :(得分:4)

前一段时间面临同样的任务,并通过require config:

来完成
require.config({
    paths: {
        // ..
        "lodash": "libs/lodash-3.9.3",
        "backbone": "libs/backbone-1.2.0",
        // ..
    },
    map: {
        "*": {
            // use lodash instead of underscore
            "underscore": "lodash"
        }
    }
}

..详细信息:http://requirejs.org/docs/api.html#config-map 我经常使用_函数,并且在切换后不必更改任何内容。