ember.js - Ember 加载模板从不显示

标签 ember.js

我试过了

/app/routes/loading.hbs
/app/pods/loading/template.hbs
/app/pods/loading.hbs
/app/pods/application/loading/template.hbs
/app/pods/application/loading.hbs
/app/templates/loading.hbs
/app/templates/application-loading.hbs

以上都不起作用。

我将它添加到我的应用程序路由中并且它可以工作,但它仅呈现应用程序模板中的微调器,而不是当前路由的适当导出。
  //app/pods/application/template.hbs
  {{#if isLoading}}
      <i class="fa fa-spinner fa-pulse fa-5x"></i>
  {{/if}}

  //app/pods/application/route.js
  actions: {
    loading(transition, originRoute) {
      let controller = this.controllerFor('application');
      controller.set('isLoading', true);
      transition.promise.finally(function() {
        controller.set('isLoading', false);
      });
    }
  }

我究竟做错了什么?为什么模板不渲染?我正在使用 ember-cli@2.4.2 和 ember@2.4.1。

最佳答案

也在这方面苦苦挣扎,帕特里克的回答有很大帮助,但根据该线程调用 super 也无济于事。删除加载操作确实有帮助,但根本原因实际上不是因为有加载操作。您可以保留加载操作,但为了让加载模板呈现,您需要 return true;从加载操作中,如果您不返回 true,则不会呈现加载模板。

我的猜测是,如果您不返回 true,则事件将停止传播,从而防止发生默认行为

关于ember.js - Ember 加载模板从不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36346518/

相关文章:

javascript - EmbjerJS 对比 BackboneJS 对比 JavascriptMVC

ember.js - Ember 阵列 Controller - 功能未加载

ember.js - 来自适配器的错误处理

javascript - 循环遍历 App.Car.find() 的结果

javascript - 如何在 Ember.js 中使用 jQuery 通过 id 获取元素?

javascript - 使用助手渲染 Ember View

caching - 在 Ember Octane 中缓存的最佳方法

javascript - Promise 成功后无法在 ember 中设置属性

ember.js - 如何检查属性(property)是否脏

javascript - ember-api-actions collectionAction 引发错误无法读取未定义的属性 'constructor'