Ember 模板渲染

2018-01-06 17:48 更新

路由的另一個(gè)重要職責(zé)是渲染同名字的模板。

比如下面的路由設(shè)置,posts路由渲染模板posts.hbs,路由new渲染模板posts/new.hbs

Router.map(function() {
     this.route('posts', function() {
     this.route('new');
  });
});

每一個(gè)模板都會(huì)渲染到父模板的{{outlet}}上。比如上面的路由設(shè)置模板posts.hbs會(huì)渲染到模板application.hbs{{outlet}}上。application.hbs是所有自定義模板的父模板。模板posts/new.hbs會(huì)渲染到模板posts.hbs{{outlet}}上。

如果你想渲染到另外一個(gè)模板上也是允許的,但是要在路由中重寫(xiě)renderTemplate回調(diào)方法。

//  app/routes/posts.js


import Ember from 'ember';


export default Ember.Route.extend({
    //  渲染到favorites模板上
    renderTemplate: function() {
        this.render('favorites');
    }
});

模板的渲染這個(gè)知識(shí)點(diǎn)比較簡(jiǎn)單,內(nèi)容也很少,在前面的Ember.js 入門(mén)指南之十四番外篇,路由、模板的執(zhí)行、渲染順序已經(jīng)介紹過(guò)相關(guān)的內(nèi)容。


博文完整代碼放在Github(博文經(jīng)過(guò)多次修改,博文上的代碼與github代碼可能又出入,不過(guò)影響不大?。绻阌X(jué)得博文對(duì)你有點(diǎn)用,請(qǐng)?jiān)趃ithub項(xiàng)目上給我點(diǎn)個(gè)star吧。您的肯定對(duì)我來(lái)說(shuō)是最大的動(dòng)力??!

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)