2016-10-26 3 views
1

Так что я ищу способ добавить только свойство href к привязным тэгам (<a></a>), если значение задано в объекте конфигурации, чтобы страница не перезагружалась, когда якорь тег, если для этого пункта меню не указан URL-адрес.Добавление свойства только в том случае, если значение установлено

Сейчас моя разметка выглядит следующим образом:

<a [href]="link.url ? link.url : '#'">{{link.title}}</a> 

И, конечно, я мог бы также использовать синтаксис "return javascript:;" как хорошо, но в идеале я хотел бы быть в состоянии избежать сдачи HREF собственности на якорь тега первое место.

Я также попытался использовать разметку

<a [href]="link.url">{{link.title}}</a> 

Просто не определяя URL для данной ссылки, однако это дает мне пустой HREF атрибута, как так: <a href>Title</a>, который до сих пор приводит к перезагрузке страницы.

В конце концов, я хотел бы видеть следующее:

URL Defined: <a href="/url">title</a>

URL Не определено: <a>title</a>

+0

Пробовали ли вы: [HREF] = "link.url |» # '"? – Meir

+0

Это буквально делает то же самое, что и '{{link.title}}', это немного меньше семантики. Цель состоит в том, чтобы вообще не иметь свойства 'href', если не существует действительного URL-адреса. – StephenRios

+0

У вас есть. Не понимал, что вы на самом деле хотите не назначать его, если он отсутствует. – Meir

ответ

2
<a [attr.href]="link.url">{{link.title}}</a> 
+0

Работал отлично, спасибо. – StephenRios

+0

Рад, что мне помогли. Просто искал «угловое условие» и wajam! – Meir

+0

Btw, angular2 имеет довольно сложный синтаксис, например: (keydown.enter) или (keyup.c) и т. Д. ... – Meir

Смежные вопросы