marsApp.filter("transformSensorStatus", function($scope) {
return function(input, options) {
var sensorReading = (input ? (input/1000) : 0);
var sensorLowLimit = (options["lowLimit"] ? (options["lowLimit"]/1000) : 0);
var sensorHighLimit = (options["highLimit"] ? (options["highLimit"]/1000) : 0);
var curStat;
switch (sensorReading) {
case 255:
case 254:
case 253:
curStat = generateStateInnerHtml(sensorReading);
break;
default:
curStat = generateStateInnerHtml(options["sensorStatus"]);
}
return curStat;
function generateStateInnerHtml(state) {
var stateHtml = null;
if (state == 255 || state == 254) {
stateHtml = "a";
$scope.sensorStateColor='';
return state_html;
}
if (state == 253) {
stateHtml = "b";
$scope.sensorStateColor="text-warning";
return state_html;
}
if (state >= 0x20) {
stateHtml = "c";
$scope.sensorStateColor="text-error";
return stateHtml;
}
if (state >= 0x02) {
stateHtml = "d";
$scope.sensorStateColor="text-error";
return stateHtml;
}
if (state == 0x01) {
stateHtml = "e";
$scope.sensorStateColor="text-success";
return stateHtml;
}
stateHtml = "N/A";
return stateHtml;
}
}
});
Error: Unknown provider: $scopeProvider <- $scope <- transformSensorStatusFilter
yep, $ rootScope kullanılabilir. – dylan
** İZLEYİCİLERE UYARI: ** '$ rootScope' aslında küresel bir kapsamdır. Bu gerçeğin sonuçlarına dikkat edin; Örneğin. '$ rootScope' üzerindeki bir iç denetleyiciden saatler kendilerini kaydettirmeye dikkat etmeli veya bellek sızıntıları meydana gelebilir. Yani, sadece '$ rootScope' kullanılabilir olduğu için, devam etmek ve dikkatsizce kullanmak anlamına gelmez. –
Teşekkürler, hala Angular 1.6.3 ile faydalı bir cevap! – zaphodb