javascript - Backbone 将参数传递给模型 url

标签 javascript backbone.js marionette

在我的 Controller 中,我将一个名为“url”的参数传递给 View 。这已成功传递到初始化函数中。接下来,当我创建模型时,我想将相同的参数传递到模型中以用作 rooturl。

以下是我尝试过的方法,但收到以下错误消息:

A "url" property or function must be specified 

这似乎参数没有传递到模型(未定义)或者我没有在模型中正确调用它。 我在这里做错了什么?

注意:初始化函数 View 中的console.log(options.url)确认参数已成功从 Controller 传递到 View ,问题是从 View 到它所在的模型未定义。

Controller :

var myview = new NewView({
           url:"api/"
       })**

查看:

  var myview = Backbone.Marionette.ItemView.extend({

        initialize: function (options) {
            this.url = options.url;
            this.model.fetch();
        },


    model: new myModel({
            url: this.url
        }),

我的模型:

var myModel = Backbone.Model.extend({
  urlRoot: function(){ return this.get('url') }

});

最佳答案

您正在尝试使用空网址获取模型。

当您调用时:

initialize: function (options) {
  this.url = options.url;
  this.model.fetch();
}

fetch 此处,您没有模型的 url。所以,你可以这样做:

initialize: function (options) {
  this.url = options.url;
  this.model.set({url: this.url});
  this.model.fetch();
}

关于javascript - Backbone 将参数传递给模型 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20004615/

相关文章:

javascript - 带触摸功能的 slider

javascript - 打开相关链接

javascript - 单选按钮、文本区域和输入检查

javascript - 加载时不显示完整日历(带主干)

javascript - 如何使用 Backbone.js 表示页面的二维网格?

backbone.js - Dart 和第三方库

javascript - jquery 对象调用自身内部的函数

javascript - Backbone.js,无法在回调上设置上下文

backbone.js - 在 Backbone Marionette 中加载数据的最佳实践是什么?

javascript - 如何访问 Collection View (或布局)的 templateHelper 中的特定模型?