Emberjs:加载其他路由的数据
Emberjs: Loading data for other route
更新到emberjs-rc.2时自行解析。看到答案。
在我的应用程序中,我有2个具有向导功能的页面。在第一页上,用户将提供一些数据,在下一页上,用户将在基于第一页上的数据构建的列表中选择一个项目。我要做的是,只要第一个页面上所需的数据有效,就开始加载第二个页面的数据,即使用户仍然在第一个页面上。这是因为构建列表服务器将花费一些时间,并且我希望在过渡到下一页时准备好数据。
这两个页面/路由嵌套在同一个资源下。
我的路线:
App.YayRoute = Ember.Route.extend({
events: {
dataValid: function() {
this.controllerFor('yaySecond').send('loadStuff');
}
}
});
App.YaySecondRoute = Ember.Route.extend({
events: {
loadStuff: function() {
this.controller.set('stuff', App.Stuff.find());
}
}
});
在YayFirstController中,我正在观察相关数据并在它是时执行this.send('dataValid')。顶部路由YayRoute很好地拾取了这个,并在第二个路由上触发loadStuff。App.Stuff.find()如下所示
find: function() {
var result = Ember.A([]);
$.getJSON(url, function(data) {
// populate result
});
return result;
}
一切都在预期时运行,但我的问题是,YaySecondController上的东西是不填充时从loadStuff调用。如果我添加控制器。在YaySecondRoute上设置('stuff', App.Stuff.find()) loadStuff的内容到setupController,数据将加载好。但这样我就失去了加载数据的乐趣。什么好主意吗?
所以,当更新到emberjs-rc时,这个问题就解决了。2今天。我还是新人,所以我不知道发生了什么。不管怎样,这是正确的方法吗?看起来有点麻烦。
相关文章:
- Angular JS和Node路由/布线-仅在页面刷新后显示数据
- 使用iron路由器服务器路由中的数据渲染模板
- Angular2路由-将数据从父组件传递到子组件
- Hapi-js重定向到另一个带有额外请求数据的路由
- 在Node.js中将数据传递到子路由时出现问题
- 在Emberjs中设置从路由到控制器的数据错误
- 如何通过Websockets路由不同的数据类型
- 数据切换=“;下拉菜单”;激活路由重定向,而不是yeoman中的下拉菜单
- 使用路由的解析数据进行角度注入
- 在路由 angularjs/expressjs 之间传递数据
- AngularJS ui-router:如何全局解析所有路由的典型数据
- Ember JS - 从路由操作更新/刷新模型数据
- 重新解析角度路由数据并保持数据同步
- meteorjs:简单的可重用模板,使用Iron Router具有特定于路由的数据上下文
- 角度 UI 路由器 - 使用路由传递动态数据
- AngularJS:在模板外部获取路由解析数据
- 如何在刷新时将持久数据保存在角度路由服务中
- 如何使用方向路由对象获取数据
- AngularJS:如何在更改路由之前从服务器获取数据
- 余烬与数据 - 路由模型无法一致地工作