我是 ember 的新手,我真的很想知道如何完成应该是一个相当简单的任务。
我正在尝试将我的简历放入 ember 应用程序中。作为简历的一部分,我有一些参考资料。
当有人点击导航中的“参考”链接时,我希望它显示每个参考的链接,以及第一个参考,显示为链接的子项。
显然,我在这里的选择是重定向到“references/1”url(不是很理想),或者显示“reference”模板。
我会为此构建一个 JSFiddle,但 jsfiddle 似乎已损坏,因为我无法加载或查看已经存在的任何内容。
我有这个与常规路线一起工作的地方,我在其中加载引用,它显示链接,如果我点击一个链接,或者直接使用'references/2' url 加载页面,它会显示正确的内容。
如果我使用重定向
App.ReferencesRoute = Ember.Route.extend({ 模型:函数(){ 返回 App.References.find(); }, 重定向:函数(){ this.transitionTo('reference',App.References.find(1)); } });
我得到正确重定向的 url,但我没有得到引用的链接。我确实加载了“参考”模板,但模型没有通过。我试过使用this.modelFor('references').get('firstObject')
,但这也没有返回任何东西,这就是我使用find(1)
.
如果我尝试像这样使用渲染模板和控制器执行此操作
App.ReferencesRoute = Ember.Route.extend({ 模型:函数(){ 返回 App.References.find(); }, 渲染模板:函数(){ this.render(); this.render('reference',{into: 'references',controller:'reference'}); } }); App.ReferenceController = Ember.ObjectController.extend({ 信:'测试信' });
我收到了链接和“测试信”消息,但遇到了其他一些问题。
1) 我不知道如何将 Reference 控制器传递给第一个模型,以便它实际上返回与用户在'/references/1' url 相同的结果
2)如果我单击链接,则不显示所选字母,这意味着如果我使用控制器,链接将不起作用。
3)我希望第一个链接处于活动状态,因为那是已经显示的字母,但与其他问题相比,这是一个小细节。
我会完全错了吗?我有什么大不了的吗?