javascript - 如何在 ember 中读取 afterModel 中的模型

标签 javascript jquery ember.js

服务器返回此 json

{"auths":[{"id":0,"email":"abc","password":"","logged":false}]}

在 chrome 的 ember 调试器中,我可以看到模型已填充。

EMSystem.Auth = DS.Model.extend({
    email: DS.attr('string'),
    password: DS.attr('string'),
    logged: DS.attr('boolean')
});

EMSystem.HomeRoute = Ember.Route.extend({
    model: function() {
        return this.store.findAll('auth');
    },
    afterModel: function(model) {
        console.log(model.get('logged'));
        //logic to change the route if user is logged
    }
});

但是对于 console.log 我变得未定义。如何访问模型后的模型?

最佳答案

findAll('type')find('type') 是同义词,都返回一个集合。如果您想打印每个项目的logged值,您可以使用forEach/for来迭代集合。

afterModel: function(model) {
  model.forEach(function(record){
    console.log(record.get('logged'));
    //logic to change the route if user is logged
  });
}

关于javascript - 如何在 ember 中读取 afterModel 中的模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24724160/

相关文章:

javascript - 如何为应用程序创建安全 token ?

ember.js - Ember.js 框架的状态如何?

javascript - 事件监听器在没有事件的情况下执行并在 HTML 集合中循环

javascript - 奇怪的 JavaScript 表示法,全是圆括号和方括号

php - 登录标题不起作用

ember.js - 在 Ember-Data 中创建临时非持久对象

javascript - Ember js - 文件上传组件 - 在第二次尝试上传同一文件时强制触发更改事件

javascript - 在 Node.js 中解析大型 XML 文件

javascript - 如何从 Beautiful Soup 获取 URL?

javascript - 为什么 $.each 仅显示我的 Mustache 模板之一?