如何在Ember.js中创建到的条件链接?
我使用的是Ember.js版本2.8.2 只有在条件为真时,我才想将内容包装在如何在Ember.js中创建到的条件链接?,ember.js,conditional,link-to,Ember.js,Conditional,Link To,我使用的是Ember.js版本2.8.2 只有在条件为真时,我才想将内容包装在链接中 第一次尝试: {{#if isAdmin}} {{#link-to admin}} contents here {{/link-to}} {{else}} contents here {{/if}} 问题:代码不干,因为内容重复两次 我该怎么做?谢谢。第一个选项: 如果要将其从dom中删除,请将“链接到”组件包装为组件(my admin link.hbs): 然后将其用作: {{#
链接中
第一次尝试:
{{#if isAdmin}}
{{#link-to admin}}
contents here
{{/link-to}}
{{else}}
contents here
{{/if}}
问题:代码不干,因为内容重复两次
我该怎么做?谢谢。第一个选项:
如果要将其从dom中删除,请将“链接到”组件包装为组件(my admin link.hbs):
然后将其用作:
{{#my-admin-link}}
your content
{{/my-admin-link}}
第二选项:
使用链接的disabled和disabledClass:
{{#link-to admin disabled=isNotAdmin disabledClass='showastext'}}
your content
{{/link-to}}
在app.css中,showastext可以定义为:
.showastext{
text-decoration: none;
cursor: text;
color: black;
}
第一个选项:
如果要将其从dom中删除,请将“链接到”组件包装为组件(my admin link.hbs):
然后将其用作:
{{#my-admin-link}}
your content
{{/my-admin-link}}
第二选项:
使用链接的disabled和disabledClass:
{{#link-to admin disabled=isNotAdmin disabledClass='showastext'}}
your content
{{/link-to}}
在app.css中,showastext可以定义为:
.showastext{
text-decoration: none;
cursor: text;
color: black;
}
对我来说,您的代码看起来还可以,因为在链接中没有提供条件检查helper@kumkanillam代码可以工作,但不会变干。事实上,我的内容有很多行,像这样做复制和粘贴是可行的。我正在考虑一个更好的方法来实现这一点。那么您是否可以创建组件并包含该组件,以便您可以在一个地方编写它,并在任何地方使用它。对我来说,您的代码看起来不错,因为链接中没有提供条件检查helper@kumkanillam代码可以工作,但不会变干。事实上,我的内容有很多行,像这样做复制和粘贴是可行的。我在想一个更好的方法来实现这一点。那么你们是否可以创建一个组件并包含它,这样你们就可以在一个地方编写它,并在任何地方使用它。