2

免责声明:我是 ember 的新手。

我试图弄清楚如何最好地构建我的应用程序,并且在过去的几个下午一直在研究它。我正在将一个现有的大型应用程序移植到 ember 上,主要是作为学习框架的练习。

为了更好地说明我的问题,我创建了一个包含整个应用程序的 jsFiddle,由部署在 heroku 上的 API 实例支持:http: //jsfiddle.net/dustmason/8fHmn/

要了解总体思路,请使用小提琴上注明的电子邮件和密码登录,然后单击其中一个项目名称。

这是我遇到麻烦的地方:

  • 我设置 topBar 控制器/视图/模板的方式,/projects每次访问项目时,ember-data 都会向我的 api 端点发出新请求。这是为什么?有什么更好的方法来构建它?

  • 现在,我将当前用户的身份验证令牌作为属性存储在我的主要App对象上。这感觉不对,但我一直无法找到避免这种情况的方法。有什么更好的方法来处理这个问题?

4

1 回答 1

2

我设置 topBar 控制器/视图/模板的方式,每次访问项目时,ember-data 都会向我的 api 的 /projects 端点发出新请求。这是为什么?

因为setupController钩子正在调用App.Project.find(),这会触发一个查询。

有什么更好的方法来构建它?

改为使用App.Project.all()。请参阅Ember-Data .find() vs .all() - 如何控制缓存?

现在,我将当前用户的身份验证令牌作为属性存储在我的主 App 对象上。这感觉不对,但我一直无法找到避免这种情况的方法。有什么更好的方法来处理这个问题?

这种方法没有任何问题(有时简单是最好的),但要获得更优雅的解决方案,请查看最新的 embercast:http ://www.embercasts.com/episodes/client-side-authentication-part-2

于 2013-07-02T04:34:56.607 回答