Шаблоны AngularJS не могут использовать JSON, который содержит дефис

Шаблоны AngularJS не могут использовать JSON, который содержит дефис в ключе.

например.

Мой Json выглядит как

{
   ...
   link: {
       xx-test:{
            href: '/test/xx'
         }
}

Теперь, в моем шаблоне angularjs, если я ссылаюсь на href, он не работает

<a ng-href="/app/edit?item={{item.link.xx-test.href}}"></a>

Невозможно разрешить значение href отображается как /Приложение/редактировать? Пункт =

Он попытался

<a ng-href="/app/edit?item={{'item.link.xx-test.href'}}"></a>
<a ng-href="/app/edit?item={{item.link.xx\-test.href}}"></a>
<a ng-href="/app/edit?item={{item.['link.xx-test'].href}}"></a>

Ответ 1

Ключ объекта должен быть указан с помощью:

$scope.bar = {'xx-test':'foo'};

В выражении angular следует использовать нотацию скобки.

<p>{{bar['xx-test']}}</p>

Вы можете необязательно вывести дефис \- в выражении angular.