Перейти к представлению и вызвать функцию $ scope с помощью ui-router - PullRequest
0 голосов
/ 28 мая 2018

Я понимаю, что этот запрос предназначен для взлома, но вот мотивация:

  • Я создаю «ярлык» для моего довольно сложного приложения.Пользователи хотят запускать функции внутри разных представлений.
  • У разных пользователей разные мнения относительно полезных ярлыков
  • Например, один пользователь может захотеть определить ярлык, который «идет к просмотру app.montage и запускает $scope.toggleInfo()»
  • Другой пользователь может захотеть определить совершенно другой ярлык, который будет вызывать функцию на 3 уровня в глубине пользовательского интерфейса существующего представления

Итак, в итоге, могу ли я придумать что-то вроде: $state.go('state name') &&, а затем инициировать функцию внутри этогоstate?

Я знаю, что могу определять маршруты URL, но это довольно сложное приложение, и его легче "запускать", если я могу.

1 Ответ

0 голосов
/ 28 мая 2018
$stateProvider.state('users', {
    url: '/users',
    controller: 'UsersCtrl',
    params: {
        obj: null
    }
})
function UserCtrl($stateParams,$scope) {
    console.log($stateParams);
    $stateParams.obj && $stateParams.obj.toggleInfo && $scope.toggleInfo();
}
$state.go('users', {obj:{toggleInfo: true});

Для получения дополнительной информации см. UI-Router Wiki - Использование параметров без указания их в URL-адресах состояний .

...