Как передать строку в конце области

0

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

 app.controller('dashboardCtrl', 
  ['$scope', '$rootScope', '$location', 'UserService',
    function($scope, $rootScope, $location, UserService) {

      var username = $rootScope.username;

      UserService.getUsers().success(function(data) {
        $scope.users = data
        $scope.loggedInUser = $scope.users.username
      })

Поэтому я пытаюсь передать имя пользователя var в конце последней строки, а не $ scope.users.username. На данный момент он просто ищет объект JSON "имя пользователя" вместо фактической строки, хранящейся в имени пользователя.

Это означало бы, что я могу искать свой файл JSON для зарегистрированного пользователя в зависимости от переменной rootScope, которая является именем пользователя.

Любая помощь приветствуется.

Теги:

2 ответа

0
Лучший ответ

Вы хотите использовать нотацию с помощью скобок для доступа к полям объекта через переменную. $scope.loggedInUser = $scope.users[username] должно работать.

  • 0
    Большое спасибо, что сработало. Никакое количество поиска в Google не принесло результата. Очень полезно.
  • 0
    Как примечание, это особенность javascript, которая не является специфичной для angular. И есть ли шанс, что вы можете принять ответ?
Показать ещё 1 комментарий
0

Если вы хотите, чтобы значение ключа, которое хранится в переменной username просто выполните:

$scope.loggedInUser = $scope.users[username];

Ещё вопросы

Сообщество Overcoder
Наверх
Меню