У меня есть служба, которая использует ngDialog (это единственная цель службы - показать общие диалоги: предупреждения, подтверждения и т. Д.). ngDialog требует, чтобы объект объекта объекта передавался как параметр для интерполяции шаблона диалога. Так что мне нужно создать область, назначить ее свойства и перейти к ngDialog.open. Проблема заключается в том, что я не могу вводить $ rootScope (или $ scope) в службу и область. $ New - единственный способ найти пустую область. Когда я впрыснуть $ rootScope нравится этаУгловое создание новой области внутри службы
myService.$inject = ['$rootScope', 'ngDialog'];
я получаю ошибку: Неизвестный поставщик: $ rootScope Провайдер < - $ rootScope < - MYSERVICE Однако, это работает, если я просто использовать ярлык syntack для decalring зависимостей:
function myService($rootScope, ngDialog) {
//$rootScope here is accessible
}
Но этот подход не является предупреждающим. Итак, вопрос: как мне создать новую область обслуживания?
ОБНОВЛЕНИЕ Вот jsfiddle, который показывает структуру, которую я имел в проекте. Ошибка произошла, когда служба была вызвана из директивы, и теперь проблема исчезла. jsfiddle
'ngDialog требует, чтобы объект объекта объекта передавался как параметр' - я не думаю, что это правильно. Не пытались ли вы пропустить область действия? – pablochan
Требуется область для интерполяции шаблона. Если я не пройду область, появится диалог, но я ничего не могу изменить внутри него без видимости – Vitaly