繁体   English   中英

Ember如何知道路由模板何时完成加载并触发回调?

[英]Ember how do I know when a route template is finished loading and fire a callback?

目前正在与Ember一起开发聊天应用程序,这非常棒,因为Ember非常适合使用。

我目前有一个聊天窗口,显然有许多人聊天。

我想在初始页面加载时向下滚动聊天窗口,这是一个例子:

<div class="chat-window">
    {{ chat-message username="John Doe" message="Blah" dispic="unknownUser.jpg" }}
</div>

那么如何将事件绑定到正在加载的整个模板(在本例中为index.hbs

我知道你可以通过以下方式对组件执行此操作:

import Ember from 'ember';

export default Ember.Component.extend({
  didInsertElement() {
    this.$('.button-collapse').sideNav();
  }
});

哪个工作正常,那么将其用于模板的等价物是什么。

据我所知,只有index.hbsindex.js路由文件。

任何信息都会非常感谢。

将组件中的操作发送到路径。 Route将从服务器检索数据,并在检索数据后,路由将更新数据。

Route可以处理加载状态。 来自指南

代码将是这样的:

import Ember from 'ember';

export default Ember.Route.extend({
  chatData:[],
  model:function(){
      return this.get('chatData'); 
  },
  actions:{
      loading:function(){
         //do about loading...
      },
      chatDataRequested:function(){
          retrieveData().then((dataFromServer)=>{this.set('chatData',dataFromServer);});
      }
  }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM