gpt4 book ai didi

ruby-on-rails - Backbonejs 路由 VS emberjs 路由

转载 作者:行者123 更新时间:2023-12-02 06:10:47 31 4
gpt4 key购买 nike

这就是我在 Backbone 中进行路由的方式,在决定调用哪个外部模板之前,首先获取路由及其参数。我觉得这很灵活。

var Router = Backbone.Router.extend({
routes: {
//'': 'renderBasic',
':module/:method/': 'renderDynamicViewPageBasic',
':module/:branch/:method/': 'renderDynamicViewPageBranch',
':module/:branch/:method/set:setnumber/page:pagenumber/': 'renderDynamicViewPagePager',
':module/:branch/:method?set=:setnumber&page=:pagenumber': 'renderDynamicViewPagePager'
},

renderDynamicViewPageBasic: function (module,method) {

$(el).html(Handlebars.getTemplate('template1')(data));
},

renderDynamicViewPageBranch: function (module,branch,method) {

$(el).html(Handlebars.getTemplate('template2')(data));
},

renderDynamicViewPagePager: function (module,branch,method,setnumber,pagenumber) {

$(el).html(Handlebars.getTemplate('template3')(data));

}
});

在 emberjs 中怎么样,我可以这样做吗 - 在决定调用哪个外部模板 之前先做 rout 并获取它的参数?

我阅读了文档并对其进行了测试。它似乎不太灵活 - 例如,
App.Router.map(function() {
this.route("about", { path: "/about" });
this.route("favorites", { path: "/favs" });
});

有没有可能 在获取模板 之前获取路由和参数,然后获取 Controller ?

如果不是,它似乎与使用 Angularjs 的情况相同,我最终决定不使用它,因为 它先获取模板,然后再整理参数 .

最佳答案

您可以使用 renderTemplate 在 EmberJs 中定义模板“post params”。 hook,您可以在其中自定义要使用的模板。

http://emberjs.jsbin.com/oXUqUJAh/1/edit

App.Router.map(function() {
this.route('apple', {path: 'apple/:id'});
});

App.AppleRoute = Ember.Route.extend({
model: function(params) {
return {coolProperty: params.id};
},
renderTemplate: function(controller, model) {
// send in the template name
this.render(model.coolProperty);
}
});

关于ruby-on-rails - Backbonejs 路由 VS emberjs 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20906508/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com