2016-07-01 2 views
1

Я заканчиваю свое приложение, которое является форумом, и мне нужно, чтобы пользователи могли удалять свои собственные темы.Показать кнопку, если два значения равны

Итак, в моем «Темы Список» шаблон, я успешно вынес следующий код:

<body ng-app> 
[...] 
<button ng-show="estudante == 'admin'"></button> 
[...] 

От:

<button ng-show="{{ request.user.username }}=='{{ topic.creator }}'">Remover Tópico</button> 

Эта кнопка не должна отображаться, если значения темы. creator и request.user.username не равны. Однако, ng-if, ng-hide и ng-show правильно настроены, похоже, не имеют никакого эффекта.

Есть ли способ заставить это работать? Я что-то пропустил в теме области? :)

Заранее благодарен!

UPDATE:

Использование '' в обоих значениях или нет одно и то же. Кнопка отображается, если значение не соответствует:

Forum

+0

Я думаю, что это становится 'estudante' в качестве переменной , а не как значение, вы можете попробовать рендеринг '' estudante'' – Gocht

+0

Вы пробовали без строковых кавычек (или с кавычками по обоим значениям)? – isherwood

+0

Привет, ребята, спасибо вам ответы. Да, поведение приложения одинаково независимо от того, как настроены кавычки (см. Скриншот UPDATE). –

ответ

0

Обычно вам не нужно фигурные скобки переменной, как {{ххх}} в этом случае. А также «можно» удалить, возможно, он работает после их удаления.

<button ng-show="request.user.username == topic.creator">Remover Tópico</button> 
+0

Hi Terajoel, спасибо за ваш ответ! К сожалению, удаление скобок приводит к тому, что шаблон не может получить требуемые значения. Код показан как простой текст -----> ----- –

+0

@FernandoWessek Да, но он должен " t проблема, что она делает ее как текст, угловой должен иметь возможность справиться с этим. Вы сделали тест и попробуйте один раз с равными и равными и равными? он должен работать. – Terajoel

+0

@FernandoWessek На других страницах это также делается так и работает: https://postimg.org/image/lb3pqvvkn/ – Terajoel

0
<button ng-show="reqeust.user.role === 'admin' && user.username === topic.crator">Remover Tópico</button> 

я думаю, что это решить эту problemn, но проверить свой код.

+0

Привет, Фабио, спасибо за ваш ответ! Это не сработает. Если я не использую скобки в «ng-show», результат HTML не получит правильные имена пользователей. Я пробовал свой код с три равных знака и без «запроса», как вы уже упоминали, но никто из них не работал. –

0

Попробуйте это:

<button ng-show="request.user.username == topic.creator">Remover Tópico</button> 

В контроллере вы должны иметь значения, которые вы хотите сравнить переменную $ области видимости что-то вроде этого:

$scope.request.user.username = "some name"; 
$scope.topic.creator = "some name"; 
+1

Я знал, что у меня что-то не хватает в области видимости! Обновит решение, основанное на том, что вы отправили. THANKS !! –

+0

Принимая правильный ответ помогло бы сообществу! –

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