Tôi đang phát triển một ứng dụng cho android bằng cách sử dụng yêu cầu js và Backbone. Tôi phải vượt qua một mô hình được lấy từ một bộ sưu tập thông qua sự kiện touchend đến router. Tôi làm nó như thế nào?Đường trục đi qua một mô hình tới Bộ định tuyến
define(["jquery", "underscore","backbone","handlebars", "views/CinemaView", "models/CineDati", "text!templates/listacinema.html"],
function($,_,Backbone,Handlebars,CinemaView, CineDati, template){
var ListaCinemaView = Backbone.View.extend({
template: Handlebars.compile(template),
events: {
"touchend" : "Details"
},
initialize : function(){
var self = this;
$.ajax({
url: 'http://www.cineworld.com/api/quickbook/cinemas',
type: 'GET',
data: {key: 'BwKR7b2D'},
dataType: 'jsonp', // Setting this data type will add the callback parameter for you
success: function (response, status) {
// Check for errors from the server
if (response.errors) {
$.each(response.errors, function() {
alert('An error occurred. Please Try Again');
});
} else {
$.each(response.cinemas, function() {
var cinema = new CineDati();
cinema.set({ id : this.id, name : this.name , cinema_url : this.cinema_url, address: this.address, postcode : this.postcode , telephone : this.telephone });
self.model.add([cinema]);
});
self.render();
}}
});
},
events : {
"#touchend" : Dettagli
},
render : function(){
$(this.el).empty();
$(this.el).html(template).append(
_.each(this.model.models, function (cinema) {
$("#lista").append(new CinemaView({
model: cinema
}).render().el); }, this));
return this;
},
Dettagli : function(){
Backbone.history.navigate(this.model , {trigger: "true"});
}
});
return ListaCinemaView;
});
Cảm ơn rất nhiều Will, bạn đã rất hữu ích! Tôi đã kiểm tra marionette.js và tôi nghĩ rằng tôi sẽ sử dụng nó cho ứng dụng trong tương lai của mình! :) –
Vui vì tôi đã giúp, Augusto. Chúc may mắn với dự án của bạn. –
Giải pháp này không tính đến thời điểm ai đó làm mới trang khi họ đang ở trang web http: ///model_id. Bạn mất tham chiếu đến mô hình. –