如何为我的所有BackboneJS模型/集合REST调用添加一个基本URL

How can i add a base URL for all my BackboneJS Models/Collections REST calls?

本文关键字:添加 一个 URL 调用 REST 我的 BackboneJS 集合 模型      更新时间:2023-09-26

让我们有以下代码:

( function($) { 
    TeacherModel = Backbone.Model.extend({
        defaults : {
            uid : -1,
            name : ""
        }
    });
    TeachersCollection = Backbone.Collection.extend({
        model : TeacherModel,
        url : function() {
            return "/path/to/api" + "/teacher";
        }
    });
}());

我想将"/path/to/api"作为Backbone的全局设置(我知道我可以在window中全局导出它,但我想在Backbone中的某个地方设置它)

有办法吗?最好的做法是什么?

我通常处理这个问题的方法是创建一个基本集合并从中继承,如下所示:

BaseCollection = BackBone.Collection.extend({
    path: '/path/to/api'
});
TeachersCollection = BaseCollection.extend({
    // path is now accessible from this and all other derived collections.
});