Может ли EmberJS поддерживать загрузку подсостояния по умолчанию

у меня такое состояние

mysite.com/#/index Это страница по умолчанию, загружаемая при инициализации.

Есть и другие подмаршруты mysite.com/#/about mysite.com/#/contact

Если кто-то введет mysite.com/#/about Могу ли я контролировать загрузку подсостояния about ?


person sudhanshu    schedule 28.11.2012    source источник


Ответы (1)


Ember Router делает это автоматически, если вы определили маршруты (URL) в своем Router.

Что-то вроде следующего автоматически перейдет в правильное состояние при вводе URL-адреса mysite.com/#/about. Если вы хотите контролировать, что происходит при входе в это состояние и выходе из него, укажите это внутри функций enter() и exit().

App.router = Ember.Router.create({
    enableLogging: true,
    //location: 'history',
    root: Ember.Route.extend({
        home: Ember.Route.extend({
            route: '/',
            redirectsTo: 'index'
        }),
        index: Ember.Route.extend({
            route: '/index',
            connectOutlets: function (router) {
                router.get('applicationController').connectOutlet('index');
            }
        }),
        about: Ember.Route.extend({
            route: '/about',

            enter: function() {
                //stuff
            }

            exit: function() {
                //stuff
            }

            connectOutlets: function (router) {
                router.get('applicationController').connectOutlet('about',);
            }
        })
    })
});
person Joachim H. Skeie    schedule 28.11.2012