真的没有办法在Ember中制作可选的动态片段吗?

时间:2014-04-23 16:00:41

标签: ember.js

我尝试添加动态段,这应该是我的应用程序的可选项,首先是我不知道他们不能选择:param语法,我开始从我的所有模板中得到一个奇怪的非描述性错误事

Uncaught TypeError: Cannot read property 'shouldSupercede' of undefined

我花了一个多小时才意识到发生了什么,无论我多么努力使用param和(:param)选择param,但我不能。

这是一个很大的问题。如果有人知道这样做的正确方法,我将非常感激

2 个答案:

答案 0 :(得分:3)

您可以使用嵌套资源(使用1.8.1版测试):

this.resource('profile-root', {
    path:'/profile'
},function(){
      this.resource('profile', {
          path : ':id'
      });
});

因此,当您导航到“/ profile”时,它将使用此路径:

  • 轮廓根
    • 轮廓root.index

当您导航到/ profile / 1:

  • 轮廓根
    • 简档
      • profile.index

答案 1 :(得分:0)

嵌套路线将为您提供可选的细分。这就是它在Ember中所做的事情。请注意,这很大程度上取决于您希望应用程序在遇到相关路线时实际执行的操作。

我建议您完整阅读路线指南并关注主要余烬网站中的视频,以真正了解余烬路线是什么以及它与您之前遇到的路线有何不同。

简单点大小:路由负责加载数据,可用于保存操作,而在其他框架中,它们实际上不是。

[edit]

除此之外,queryParams或globbing路径(使用splat" *" char)实际上可能更符合您的尝试。