2015-07-23 4 views
2

Я потерян, не могли бы вы мне помочь?

У меня есть значение в $ объеме, который извлекается из JSON файла:

в контроллере:

$scope.scopeTitle = title; 

в JSON файл:

"title": "fruit.ID || 'Empty'" 

fruit.ID извлекается из внутреннего интерфейса , и я хочу показать его ID в своем HTML.

Все отлично работает, если в моем HTML я STH нравится:

<span class="navbar-brand" data-ng-bind="fruit.ID || 'Empty'" /> 

результат на HTML является:

FRUIT/12 or Empty <- and it's good 

Если я хочу, чтобы передать его через $ рамку, как это :

<span class="navbar-brand" data-ng-bind='scopeTitle' /> 

это не работает, то результат на HTML является:

fruit.ID || 'Empty' <- it's not good 

Мой HTML генерируется в шаблоне в директиве, и я использую функцию компиляции $ для компиляции кода HTML.

Как правильно написать выражение ng-bind для достижения результата через $ scope?

+0

Можете ли вы попробовать использовать '$ eval', чтобы увидеть, будет ли это работать. Почти невозможно оценить строку в угловых выражениях. Вы можете проверить '$ eval' [здесь] (https://docs.angularjs.org/api/ng/type/$rootScope.Scope#$eval) – hisabimbola

ответ

1

попробовать использовать $ $ Eval сфера в контроллере и использовать это, чтобы объявить scopeTitle

$scope.scopeTitle = $scope.$eval(title); 

** Обновление: *. вы можете увидеть, что вы назначая " fruit.ID || 'Empty' "как строка в качестве выражения, поэтому вам нужно использовать $ eval

и почему бы не использовать что-то вроде этого

<span class="navbar-brand">{{scopeTitle}}</span> 
+0

Есть проблемы с '$ eval'. Я получаю сообщение об ошибке: 'Неизвестный поставщик: $ evalProvider <- $ eval', но я ввожу' $ eval' в свой контроллер. 'Я не могу использовать только {{scopeTitle}}', потому что он не будет связываться с бэкэнд (я тоже попробовал это и не сработал) –

+0

извините, чувак, мой плохой, я исправил его –

+0

это не услуга, это функция в области, я написал, что по ошибке –

-2

попробовать

data-ng-bind={{scopeTitle}} 
+0

Nono, это не сработает, но спасибо за помощь! –

+0

Вы пробовали? –

+0

Да, конечно, я попробовал –