Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript backbone.js模型在成功获取后未更新_Javascript_Backbone.js_Underscore.js - Fatal编程技术网

Javascript backbone.js模型在成功获取后未更新

Javascript backbone.js模型在成功获取后未更新,javascript,backbone.js,underscore.js,Javascript,Backbone.js,Underscore.js,我试图在项目中使用backbone.js,但在尝试使用fetch方法更新模型时遇到了问题。 我的模型如下(singleton对象,因为我只需要一个实例) 我的观点如下,当成功获取时,在记录模型和响应的地方调用方法updateLogin 定义([ “jquery”, “下划线”, "骨干",, “模型/用户/用户模型”, 'text!templates/login/loginTemplate.html' ],函数($,\,主干,用户模型,loginTemplate){/},页脚模板){ })) 目

我试图在项目中使用backbone.js,但在尝试使用
fetch
方法更新模型时遇到了问题。 我的模型如下(singleton对象,因为我只需要一个实例)

我的观点如下,当成功获取时,在记录模型和响应的地方调用方法
updateLogin

定义([ “jquery”, “下划线”, "骨干",, “模型/用户/用户模型”, 'text!templates/login/loginTemplate.html' ],函数($,\,主干,用户模型,loginTemplate){/},页脚模板){

}))

目前我的模型没有更新

但响应对象是正确和成功的

任何帮助都将不胜感激

 parse: function (res) {
    // because of jsonp 
    return res.data;
}
需要删除,它是从一个示例中复制的,尽管示例中的查询在一个对象中有一个对象,这与我的配置不同。立即解决=]

var LoginView = Backbone.View.extend({
    el: $("#loginArea"),
    events: {
        'mouseup #loginButton': 'expandLogin',
        'click #login': 'loginUser'
    },
    initialize: function () {
        this.options = { user: '', pass: "" };
        var that = this;
        this.model = UserModel;
        this.model.on('change', this.render, this);
        this.render();
    },
    render: function () {
        var data = {
            user: this.model.toJSON(),
            _: _
        };
        var compiledTemplate = _.template(loginTemplate, data);
        this.$el.html(compiledTemplate);
    },
    updateLogin: function(model, response, options) {
        console.log(model);
        console.log(response);
        console.log(options);
    },
    expandLogin: function () {
        var button = this.$el.children("div").first().children('#loginButton')[0];
        var box = this.$el.children("div").first().children('#loginBox')[0];
        $(box).fadeToggle(400);
        $(button).toggleClass('active');
    },
    loginUser: function () {
        var that = this;
        var username = $('#username_field', this.el).val();
        var password = $('#password_field', this.el).val();
        this.options = { user: username, pass: password };
        this.model.prepare(this.options);
        this.model.fetch({
            type: "GET",
            error: function (collection, response, options) {
                alert('error');
                alert(response.responseText);
            },
            success: that.updateLogin,
            complete: function () {
                alert('complete');
            },
            dataType: 'jsonp'
        });

    }

});

return LoginView;
 parse: function (res) {
    // because of jsonp 
    return res.data;
}