如何在同一路径(ember)中访问从模型钩子返回的模型数据?

时间:2017-09-07 04:55:38

标签: ember.js

项目的数据将在模板中编辑。如果我导航到其他链接,则不保存,将执行willTransition操作,但如何访问'项目'同一路线内的模型数据?? (不使用控制器)

//路由/记录/编辑

    return RSVP.hash({
        project: this.get('store').findRecord('project', params.id),
        ..: this.get('store').findAll('...')
    });
},
actions: {
    willTransition(transition) {
        if (project.isDirty) { //how to use project which is returned by model hook
            if (!confirm('unsaved is it okay!!!')) {
                transition.abort();
            }
        }
    }

2 个答案:

答案 0 :(得分:0)

this.controller.get('model')应该返回模型,如果你在模型中设置'project'或者它是一个控制器属性,那么this.controller.get('project')< / p>

答案 1 :(得分:0)

this.modelFor('record').project.get('hasDirtyAttributes');

.modelFor('record')将从路径记录中获取模型,.project将在该模型中获得RSVP,.get('hasDirtyAttributes')是模型数据的属性,如果模型数据已经改变。