【问题标题】:Controller fails to be called控制器调用失败
【发布时间】:2016-08-26 09:38:50
【问题描述】:

我最近开始学习 ember.js,但由于某种原因我无法调用我的控制器

App = Ember.Application.create();

App.Router.map(function() {
  this.route('about');
});

App.IndexRoute = Ember.Route.extend({
  model: function() {
    return ['red', 'yellow', 'blue', 'pie','koala'];
  }
});

App.IndexController = Ember.Controller.extend({
    sortedModel : function(){
        alert("this works");
    }
});

app.js

<script type="text/x-handlebars" id="index">
    <ul>
    {{#each sortedModel as |item|}}
      <li>{{item}}</li>
    {{/each}}
    </ul>
  </script>

我尝试通过在循环中引用 sortedModel 来调用它,按照教程 它可能真的很愚蠢,但对于我的生活来说,我似乎看不到它,我按照教程进行操作,没有它就无法继续

【问题讨论】:

  • 我在一个教程中遇到了同样的问题,我找不到答案,我只是决定使用另一个教程
  • 你能指出哪个教程吗?..你在模板中迭代sortedModel函数

标签: javascript html ember.js


【解决方案1】:

试试:

用 .property() 标记函数

App.IndexController = Ember.Controller.extend({
    sortedModelAlertOnly : function(){
        alert("this works");
    }.property(),
    sortedModel : function(){
       return this.get('model').sort();
    }.property('model')
});

http://jsbin.com/beguqoqubi/edit?html,js,output

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-20
    • 1970-01-01
    • 2017-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多