使用stickit.js的backbone.js嵌套对象属性

时间:2013-12-05 12:01:28

标签: backbone.js backbone-stickit

我使用stickit.js来实现双向数据绑定。我很高兴知道如何使用嵌套对象属性绑定stickit。对于例如

var Person = Backbone.Model.extend({
    defaults:{
        name: {
            first: 'James',
            last: 'White'
        }
    }
});

我想我可以将文本输入绑定到这样的东西。

<input type="text" name="firstname" class="first-name"/>


bindings: {
    '.first-name': 'name.first'
}

1 个答案:

答案 0 :(得分:2)

听起来你可以使用名为 computeds 的功能。

计算机是动态计算的绑定字段,可能是其他模型字段的化合物。

但是,我无法在stickit文档中看到这种功能。所以你可以给出真正优秀的模型绑定库backbone-epoxy。我为你做了jsfiddle

var Person = Backbone.Epoxy.Model.extend({
    defaults:{
        name: {
            first: 'James',
            last: 'White'
        }
    },
    computeds: {
        fullname: function() {
            return this.get('name').first + ' ' + this.get('name').last;
        }
    }
});

var view = new Backbone.Epoxy.View({
    el: '#app',
    model: new Person()
});

和html:

<div id="app">
    <input type="text" data-bind="value:fullname" />
</div>