我有一个 Backbone 集合,其 URL 取决于初始化函数。当我创建这个 Backbone 集合的一个实例时,我传入一个 ID 来过滤模型的哪些实例出现。以下是该集合的代码:
var GoalUpdateList = Backbone.Collection.extend({
// Reference the Goal Update model
model: GoalUpdate,
// Do HTTP requests on this endpoint
url: "http://localhost:8000/api/v1/goal_update/?goal__id=" + this.goal_id + "&format=json",
// Set the goal ID that the goal update list corresponds to
initialize: function(goal_id) {
this.goal_id = goal_id;
console.log(this.goal_id);
console.log(this.url);
},
});
当然,这是行不通的。this.goal_id
被视为未定义。我猜是因为 URL 是在初始化函数运行之前设置的。