Maison > Questions et réponses > le corps du texte
fichier angulaire.js
define(['angular'],function(){
angular.module("todosa",[]).controller("todosAngular",function($scope){
$scope.sum=new Array();
var fn=function(){
if($scope.sum.length<10 ){
if($scope.arr!=="" && $scope.arr!==undefined){
$scope.sum.unshift($scope.arr);
$scope.arr="";
}
}else{
alert("已经10个了,不能在增加了。");
$scope.arr="";
}
}
$scope.todosAclick=function(){
fn();
};
$scope.todosAremove=function(){
$scope.sum=[];
$scope.arr="";
};
$scope.todosAre=function(s){
$scope.sum.splice(s,1);
};
$scope.akeydown=function(e){
if(e.keyCode==13) fn();
};
});
})
main.js,fichier d'entrée reuiqre
require.config({
baseUrl:"../js/",
paths:{
'jquery':'lis/jquery.min',
'avalon':'lis/avalon.min',
'angular':'lis/angular.min'
}
});
require(['todosAngular','todosjs','todosAvalon','todosJquery'],function(){
});
R.js
({
baseUrl:".",
name:'todosmain',
paths:{
'jquery':'lis/jquery.min',
'avalon':'lis/avalon.min',
'angular':'lis/angular.min'
},
excludeShallow:["angular","avalon","jquery"],
out:"todos-Set.js"
})
Message d'erreur
Error: [$injector:unpr] http://errors.angularjs.org/1.4.3/$injector/unpr?p0=eProvider%20%3C-%20e%20%3C-%20todosAngular
at Error (<anonymous>)
at http://127.0.0.1:4000/sunshine/add/js/lis/angular.min.js:6:416
at http://127.0.0.1:4000/sunshine/add/js/lis/angular.min.js:40:375
at Object.d [as get] (http://127.0.0.1:4000/sunshine/add/js/lis/angular.min.js:38:364)
at http://127.0.0.1:4000/sunshine/add/js/lis/angular.min.js:40:449
at d (http://127.0.0.1:4000/sunshine/add/js/lis/angular.min.js:38:364)
at Object.e [as invoke] (http://127.0.0.1:4000/sunshine/add/js/lis/angular.min.js:39:124)
at P.instance (http://127.0.0.1:4000/sunshine/add/js/lis/angular.min.js:80:122)
at S (http://127.0.0.1:4000/sunshine/add/js/lis/angular.min.js:61:199)
at g (http://127.0.0.1:4000/sunshine/add/js/lis/angular.min.js:54:384)
Ceci est juste une petite démo de tâches écrites par moi. Je veux essayer de l'emballer avec r.js, mais angulaire continue de l'enregistrer. Il n'y avait presque aucune erreur avant l'empaquetage à l'aide de r.js.
Adresse de démonstration :
pour l'emballage
après emballage
某草草2017-05-15 16:56:34
1. Je sais probablement où se trouve votre erreur. En regardant le message d'erreur, il devrait s'agir d'un problème d'injection de dépendances. Vous devez injecter les éléments dépendants dans votre contrôleur. Le contrôle doit être écrit comme ceci : App.controller("CtrlName",["$scope",function($scope){...}]) car sinon, sa structure sera détruite lors du packaging. Donc une erreur. sera signalé ; je vous réponds sur mon téléphone portable, ce qui est gênant, si j'ai le temps, je vous donnerai une explication plus détaillée sur mon ordinateur.
(Je ne sais pas pourquoi le code est toujours tronqué après modification...)
为情所困2017-05-15 16:56:34
Avant de packager avec r.js, utilisez ngAnnotate pour gérer la syntaxe d'injection de dépendances (vous n'avez donc pas besoin de la syntaxe du mode tableau. Bien sûr, il est préférable d'utiliser un outil de construction pour automatiser ce processus).