Как реализовать переход на новую страницу в Backbone? Накопилась парочка вопросов. Есть приложение которое в случае успеха должно перевести юзера на новую страницу (используя роут) Как сделать переход по нажатию кнопки? Можно ли что бы все что есть на странице убиралось и вставлялся новый шаблон из новой вьюхи? И как если можно ? Ну то есть как будто это две разные страницы?
Для реализации перехода на новую страницу в Backbone можно воспользоваться роутером. Вам нужно определить маршрут и соответствующий ему метод, который будет отображать новую страницу. Например:
var Router = Backbone.Router.extend({ routes: { "newPage": "showNewPage" }, showNewPage: function() { // Отобразить новую страницу } }); var router = new Router(); Backbone.history.start();
Для перехода по нажатию кнопки, можно привязать обработчик события к кнопке, который будет вызывать метод перехода на новую страницу:
Чтобы заменить содержимое текущей страницы новым шаблоном из новой вьюхи, можно использовать метод setElement() во вьюхе. Например:
showNewPage: function() { var newPageView = new NewPageView(); this.$el.empty().append(newPageView.render().$el); }
Таким образом, при переходе на новую страницу все содержимое текущей страницы будет заменено новым шаблоном из новой вьюхи, создавая впечатление двух разных страниц.
Для реализации перехода на новую страницу в Backbone можно воспользоваться роутером. Вам нужно определить маршрут и соответствующий ему метод, который будет отображать новую страницу. Например:
var Router = Backbone.Router.extend({routes: {
"newPage": "showNewPage"
},
showNewPage: function() {
// Отобразить новую страницу
}
});
var router = new Router();
Backbone.history.start();
Для перехода по нажатию кнопки, можно привязать обработчик события к кнопке, который будет вызывать метод перехода на новую страницу:
var NewPageView = Backbone.View.extend({events: {
"click #btn": "goToNewPage"
},
goToNewPage: function() {
router.navigate("newPage", {trigger: true});
}
});
Чтобы заменить содержимое текущей страницы новым шаблоном из новой вьюхи, можно использовать метод setElement() во вьюхе. Например:
showNewPage: function() {var newPageView = new NewPageView();
this.$el.empty().append(newPageView.render().$el);
}
Таким образом, при переходе на новую страницу все содержимое текущей страницы будет заменено новым шаблоном из новой вьюхи, создавая впечатление двух разных страниц.