Ich benutze SonarLint mit Eclipse-, und ich bin Codding eine Anwendung mit AngularJS. Ich hatte ein Problem mit einem Controller, so dass ich versuchte, es ein bisschen sauberer zu sehen, und dann SonarLint brachte mir ein Problem:Komplexität größer als die autorisierten in AngularJS Controller (SonarLint Ausgabe)
Funktion hat eine Komplexität von 11, die größer als 10 berechtigt ist.
Und hier ist der Code meines Controller:
app.controller('LauncherCtrl', function ($scope, $http) {
$scope.genStatus = "stopped";
$scope.startgenerator = function() {
$http.get('/start').success(function() {
$scope.updateStatus();
});
};
$scope.resumegenerator = function() {
$http.get('/resume').success(function() {
$scope.updateStatus();
});
};
$scope.suspendgenerator = function() {
$http.get('/suspend').success(function() {
$scope.updateStatus();
});
};
$scope.stopgenerator = function() {
$http.get('/stop').success(function() {
$scope.updateStatus();
});
};
$scope.updateStatus = function() {
$http.get('/status').success(function (response) {
$scope.genStatus = response.data;
});
};
$scope.updateStatus();
});
Gibt es etwas falsch mit ihm? Ich nehme an, dieses Problem würde über zu viele verschachtelte Loops/Funktionen gehen, aber soweit ich sehen kann, ist es nicht (abgesehen von den Funktionen start/stop/resume/pause, die update aufrufen, aber es ist nicht Komplexität 11, ist es ?). + Ich habe die Klammern/Klammern doppelt überprüft, ich glaube nicht, dass das Problem von dort kommt.
Dank, dachte ich nicht, nur eine Funktion zur Verwendung von . Da ich neu in Javascript/AngularJS bin, bin ich an einer guten Praxis interessiert. Kannst du mir ein paar Tipps geben, wie ich mit der http-Anfrage umgehen soll? Was soll der Dienst tun? – Krihox
Gerade editiert meine Antwort – Gatsbill
Großartig, vielen Dank! + Ich überprüfe den von Ihnen vorgeschlagenen Style Guide, der interessant erscheint – Krihox