如何在emberJS中显示json?

时间:2014-10-17 12:27:38

标签: jquery ajax ember.js

我是“JS框架主题”的新手,现在我尝试

  1. 从json文件中获取数据
  2. 在表格中显示
  3. 后来我想过滤/排序数据,但我想一步一步地做。

    到目前为止我想出了什么:

    app.js

    App = Ember.Application.create();
    
    App.Router.map(function() {
      // put your routes here
    });
    
    App.IndexRoute = Ember.Route.extend({
        model: function(){
            $.ajaxSetup({
                async: false
            });
            $.getJSON("json/json_10k.json", function(json) {
                return json;
            });
        }
    });
    

    index.html(部分内容):

    <script type="text/x-handlebars" id="index">
      <ul>
      {{#each item in model}}
        <li>:{{item.Id}}</li>
      {{/each}}
      </ul>
    </script>
    

    现在,我没有看到任何数据/错误。也许有人有想法,这里可能有什么不妥。

1 个答案:

答案 0 :(得分:0)

如果您真的想使用async:false,可以尝试相反的方式

$.ajaxSetup({
  async: false
});

$.getJSON("json/json_10k.json", function(json) {
  App.IndexRoute = Ember.Route.extend({
    model: json
  });
});

或者像这样返回

App.IndexRoute = Ember.Route.extend({
    model: function(){
        $.ajaxSetup({
            async: false
        });
        return $.getJSON("json/json_10k.json").responseText; 
               // you maybe need to JSON.parse() here
        // return $.parseJSON($.getJSON("json/json_10k.json").responseText);
    }
});