如何在 Ember.js 中创建条件 link-to?
How to make a conditional link-to in Ember.js?
我正在使用 Ember.js 版本 2.8.2。
只有当条件为真时,我才想将东西包裹在 link-to
中。
先试试:
{{#if isAdmin}}
{{#link-to admin}}
contents here
{{/link-to}}
{{else}}
contents here
{{/if}}
问题:代码不干,因为内容重复了两次。
我应该怎么做?谢谢
第一个选项:
如果您想从 dom 中删除它,请将您的 "link-to" 组件包装为一个组件 (my-admin-link.hbs):
{{#if isAdmin}}
{{#link-to admin}}
{{yield}}
{{/link-to}}
{{else}}
{{yield}}
{{/if}}
比用作:
{{#my-admin-link}}
your content
{{/my-admin-link}}
第二个选项:
使用 disabled 和 disabledClass of link-to:
{{#link-to admin disabled=isNotAdmin disabledClass='showastext'}}
your content
{{/link-to}}
在你的 app.css showastext 中可以定义为:
.showastext{
text-decoration: none;
cursor: text;
color: black;
}
我正在使用 Ember.js 版本 2.8.2。
只有当条件为真时,我才想将东西包裹在 link-to
中。
先试试:
{{#if isAdmin}}
{{#link-to admin}}
contents here
{{/link-to}}
{{else}}
contents here
{{/if}}
问题:代码不干,因为内容重复了两次。
我应该怎么做?谢谢
第一个选项:
如果您想从 dom 中删除它,请将您的 "link-to" 组件包装为一个组件 (my-admin-link.hbs):
{{#if isAdmin}}
{{#link-to admin}}
{{yield}}
{{/link-to}}
{{else}}
{{yield}}
{{/if}}
比用作:
{{#my-admin-link}}
your content
{{/my-admin-link}}
第二个选项:
使用 disabled 和 disabledClass of link-to:
{{#link-to admin disabled=isNotAdmin disabledClass='showastext'}}
your content
{{/link-to}}
在你的 app.css showastext 中可以定义为:
.showastext{
text-decoration: none;
cursor: text;
color: black;
}