Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 如何在每次命中索引时执行代码?_Ember.js - Fatal编程技术网

Ember.js 如何在每次命中索引时执行代码?

Ember.js 如何在每次命中索引时执行代码?,ember.js,Ember.js,每当访问/路由时,如何执行一些代码 我现在有: App.indexController = Ember.Controller.extend({ showFront: function () { alert("zzz"); } }); 但是我被卡住了。如何使其实际工作?您首先需要定义一个路由,然后对其调用一个函数 请阅读以下内容: 加载路由时,可以使用和挂钩执行代码 App.Router.map(function(){ this.resource('posts

每当访问
/
路由时,如何执行一些代码

我现在有:

App.indexController = Ember.Controller.extend({
    showFront: function () {
        alert("zzz");
    }
});

但是我被卡住了。如何使其实际工作?

您首先需要定义一个路由,然后对其调用一个函数

请阅读以下内容:

加载路由时,可以使用和挂钩执行代码

App.Router.map(function(){
  this.resource('posts', { path: '/posts' }, function() {});
});

App.PostsRoute = Ember.Route.extend({
  // http://emberjs.com/api/classes/Ember.Route.html#method_beforeModel
  beforeModel: function() {
    console.log("beforeModel fired");
  },

  // http://emberjs.com/api/classes/Ember.Route.html#method_setupController
  setupController: function(controller, model){
    this._super(controller, model);
    console.log("setupController fired");
  },

  model: function(){
    // resolve the promise after a short delay
    return Ember.RSVP.Promise(function(resolve, reject){
      setTimeout(function(){
        resolve(true);
      }, 2000);
    });
  }
});
正如名称所示,
beforeModel
将在加载模型之前启动,
setupController
将在加载模型之后启动。JSBin中的示例使用延迟加载模型来演示差异

此示例显示了用于
App.Post
路由的钩子,但如果您希望在加载默认路由时执行代码,则可以在
App.ApplicationRoute
上使用此钩子


这不起作用:App.IndexRoute=Ember.Route.extend({setupController:function(controller){$('#authentication').show();});