0

アプリのURLで2つの計算されたプロパティを使用する必要がありますが、遷移を行うと、それらは未定義と表示されます。

これが私のコードです:

App.PostController = Ember.ObjectController.extend({
    updated_at: null,
    year: function() {            
        var updated_at = this.get('updated_at');
        return moment(updated_at).format('YYYY');
    }.property().cacheable(),
    month: function() {
        var updated_at = this.get('updated_at');
        return moment(updated_at).format('MM');
    }.property().cacheable()
});

App.Router = Ember.Router.extend({
    location: 'history',
    //enableLogging: true,
    root: Ember.Route.extend({
        showPosts: Ember.State.transitionTo('posts'),
        posts: Ember.Route.extend({
            route: '/',
            posts: Ember.Route.extend({
                route: '/',
                showPost: Ember.State.transitionTo('post'),
                connectOutlets: function(router) {
                    router.get('applicationController').connectOutlet('posts');
                }
            }),
            post: Ember.Route.extend({
                route: '/:year/:month/:slug',
                connectOutlets: function(router, post) {
                    router.get('applicationController').connectOutlet('post', post);
                }
            })
        })
    })
});

投稿をクリックすると、URLは次のようになります。/undefined/undefined/this-is-a-slug

これはできますか?そうでない場合は、他の方法で達成できますか?

ありがとう。

4

0 に答える 0