У мене досить простий кутовий додаток, який працює на моїй машині розробки досить добре, але не працює з цим повідомленням про помилку (на консолі браузера) після того, як я його розгортаю:
Uncaught Error: [$injector:unpr] http://errors.angularjs.org/undefined/$injector/unpr?p0=tProvider%20%3C-%20t%20%3C-%20%24http%20%3C-%20%24compile
Жодного іншого повідомлення крім цього. Це відбувається, коли сторінка спочатку завантажується.
Я запускаю ASP.NET MVC5, Angular 1.2RC3 і натискаю на Azure через git.
Гуглінг не виявив нічого цікавого.
Будь-які пропозиції?
Редагувати:
Я використовую TypeScript і визначаю свої залежності зі $injectзмінною, наприклад:
export class DashboardCtrl {
public static $inject = [
'$scope',
'$location',
'dashboardStorage'
];
constructor(
private $scope: IDashboardScope,
private $location: ng.ILocationService,
private storage: IDashboardStorage) {
}
}
Я вважаю, що слід (або має на меті) обійти проблеми перейменування локальної змінної, які виникають під час мінімізації, і які можуть спричинити цю помилку.
Однак, це явно має щось спільне з процесом мінімізації, тому що коли я встановлюю BundleTable.EnableOptimizations = trueсвій дев-апарат, я можу його відтворити.
$injectпублічної змінної, яка, на мою думку, рівнозначна тому, як ви пропонуєте (див. Docs.angularjs.org/guide/di ). Я оновлю своє запитання.