📅  最后修改于: 2023-12-03 15:29:34.206000             🧑  作者: Mango
BackboneJS 是一个轻量级的 JavaScript 库,它可以用于 Web 应用程序中,实现 MVC 模式的设计。通过将数据、业务逻辑和用户界面分离,BackboneJS 让代码易于维护和扩展,并提高 Web 应用程序的性能。
// 定义一个模型
var Person = Backbone.Model.extend({
defaults: {
name: 'Joe',
age: 30,
occupation: 'worker'
}
});
// 定义一个视图
var PersonView = Backbone.View.extend({
tagName: 'li',
initialize: function() {
this.render();
},
render: function() {
this.$el.html(this.model.get('name') + ' (' + this.model.get('age') + ') - ' + this.model.get('occupation'));
}
});
// 定义一个集合
var PeopleCollection = Backbone.Collection.extend({
model: Person
});
// 定义一个集合视图
var PeopleView = Backbone.View.extend({
tagName: 'ul',
initialize: function() {
this.render();
},
render: function() {
this.collection.each(function(person) {
var personView = new PersonView({ model: person });
this.$el.append(personView.el);
}, this);
}
});
// 创建一些数据
var person1 = new Person({ name: 'Alice', age: 22, occupation: 'student' });
var person2 = new Person({ name: 'Bob', age: 35, occupation: 'engineer' });
var person3 = new Person({ name: 'Charlie', age: 50, occupation: 'manager' });
// 创建一个集合
var peopleCollection = new PeopleCollection([person1, person2, person3]);
// 创建集合视图
var peopleView = new PeopleView({ collection: peopleCollection });
// 显示在 DOM 中
$('body').html(peopleView.el);
以上代码展示了如何使用 BackboneJS 创建一个模型、视图、集合和集合视图,并将它们渲染到 DOM 中。这只是 BackboneJS 的冰山一角,有更多强大的功能可以探索。