如果存在插座,则仅渲染插座模板

时间:2016-12-15 11:08:36

标签: ember.js

我有路线' A'和subroute' B'。我不想呈现Route' A'的模板。如果子路由' B'被访问。但如果我不处于子路由级别,我想渲染路由模板' A'。

有没有办法实现这个目标?我尝试了以下模板' A':

{{#if outlet}}
    <h1>Subroute</h1>
    {{outlet}}
{{else}}
    <h1>Route</h1>
{{/if}}

可惜这不起作用(插座是一个魔术&#39;字,它不是正常变量)。我可以通过使用css的绝对定位来做到这一点,但如果可能的话,我想使用更多的Ember方式!

没有像Remi在https://stackoverflow.com/a/34813398/2049986中所说的那样嵌套路线对我来说是不可取的,因为路线&#39; A&#39;用于子路由&#39; B&#39; (以及路线的其他子路线&#39; A&#39;)。

1 个答案:

答案 0 :(得分:1)

愚蠢的我,在更多思考之后,您可以使用index子路由...只需删除路径'A'的模板并将其内容放在索引子路径中。只有在您不访问“普通”子路径时才会显示此模板。