Angularjs Angular代码在RubyonRails缩小和浓缩后被破坏
Ruby on Rails框架会自动缩小和压缩所有文件,从而导致此错误: “错误:[$injector:unpr]未知提供程序:eProvider 您应该在数组的参数用引号括起来之后将控制器函数添加到数组中。这允许从缩小中转义参数名称,以便Angular知道向控制器函数注入什么Angularjs Angular代码在RubyonRails缩小和浓缩后被破坏,angularjs,Angularjs,Ruby on Rails框架会自动缩小和压缩所有文件,从而导致此错误: “错误:[$injector:unpr]未知提供程序:eProvider 您应该在数组的参数用引号括起来之后将控制器函数添加到数组中。这允许从缩小中转义参数名称,以便Angular知道向控制器函数注入什么 您应该在数组的参数写在引号中之后将控制器函数添加到数组中。这允许从缩小中转义参数名称,以便Angular知道向控制器函数注入什么。问题取决于$injector的注释 例如,当您执行变量mangling时,服务UserSe
您应该在数组的参数写在引号中之后将控制器函数添加到数组中。这允许从缩小中转义参数名称,以便Angular知道向控制器函数注入什么。问题取决于
$injector
的注释
例如,当您执行变量mangling
时,服务UserService
将变为a
,并且它无法由$injector container
解决
您需要注释此依赖项,angular提供了许多方法:
app.controller('MyCtrl',['$scope','greeter',function($scope,greeter){}]);
$inject
属性:函数MyCtrl($scope,greeter){}
MyCtrl.$inject=['$scope','greeter'];
app.controller('MyCtrl',MyController);
ngstrictdi
指令(即使在开发中)。
$injector/strictdi问题取决于
$injector
的注释
例如,当您执行变量mangling
时,服务UserService
将变为a
,并且它无法由$injector container
解决
您需要注释此依赖项,angular提供了许多方法:
app.controller('MyCtrl',['$scope','greeter',function($scope,greeter){}]);
$inject
属性:函数MyCtrl($scope,greeter){}
MyCtrl.$inject=['$scope','greeter'];
app.controller('MyCtrl',MyController);
ngstrictdi
指令(即使在开发中)。
$injector/strictdi您应该查看DialogCtrl。您可能没有将一个参数(injector)添加到字符串数组。@CKK我为没有在代码中添加该控制器而道歉,我现在添加了它。您应该查看DialogCtrl。您可能没有添加一个参数(injector)到字符串数组。@CKK我很抱歉没有在代码中添加那个控制器,我现在添加了它。
var AppControllers = angular.module('AppControllers',[]);
AppControllers.controller('MainCtrl',[
function(){
}]);
AppControllers.controller('SidebarCtrl', [
'$scope', '$timeout', '$mdSidenav', '$log', '$http',
function($scope, $timeout, $mdSidenav, $log, $http){
$scope.closeNav = function(){
$mdSidenav('nav').close()
.then(function(){
$log.debug("close nav is done");
});
};
}]);
AppControllers.controller('DialogCtrl', function($scope, $mdDialog) {
$scope.openDialog = function() {
$mdDialog.show(
$mdDialog.alert()
.clickOutsideToClose(true)
.title('Informacija o podacima')
.textContent('Navedeni podaci su povijesni. flightmap4.me ne preuzimaju odgovornost za njihovo korištenje prilikom donošenja odluke o rezervaciji ili kupnji aviokarte. Cijena aviokarte ovisi o trenutnoj raspoloživosti na pojedinom letu. Finalna cijena aviokarte vidljiva je na trećem koraku rezervacijskog procesa.')
.ariaLabel('Info dialog')
.ok('Zatvori')
.openFrom('#left')
.closeTo(angular.element(document.querySelector('#left')))
);
};
});
var Flightmap = angular.module('Flightmap', [
'ngMaterial',
'AppControllers'
]);
AppControllers.controller('DialogCtrl', ['$scope', '$mdDialog', function($scope, $mdDialog) {
$scope.openDialog = function() {
$mdDialog.show(
$mdDialog.alert()
.clickOutsideToClose(true)
.title('Informacija o podacima')
.textContent('Navedeni podaci su povijesni. flightmap4.me ne preuzimaju odgovornost za njihovo korištenje prilikom donošenja odluke o rezervaciji ili kupnji aviokarte. Cijena aviokarte ovisi o trenutnoj raspoloživosti na pojedinom letu. Finalna cijena aviokarte vidljiva je na trećem koraku rezervacijskog procesa.')
.ariaLabel('Info dialog')
.ok('Zatvori')
.openFrom('#left')
.closeTo(angular.element(document.querySelector('#left')))
);
};
}]);