У меня есть кнопка, которую я хочу переключить с ng-show
на основе значения моего идентификатора.angularjs вызывает объекты и возвращаемые значения
in my javascript
Я вызываю функцию service on on, а затем использую их из другой функции.
Моя проблема при использовании ng-click Я могу вернуть правильный идентификатор, но при использовании ng-init он возвращает значение как неопределенное.
Как вызывать и определять значение Id из события «onload», такого как ng-init?
HTML
<button type="button" class="col button button-small button-dark" ng-click="showMe(ph);" ng-init="showMe(ph);">
Check In
</button>
Javascript Service Получить
$scope.PhaseData = function(Truck) {
var TruckID = window.localStorage['truckid'];
$http.get("http://localhost:53101/TruckService.svc/GetStatusA/" + TruckID)
.success(function(data) {
var PhaseID = null;
var obj = data;
var ar = [];
angular.forEach(obj, function(index, element) {
angular.forEach(index, function(indexN, elementN) {
ar.push({PId: indexN.PId, PhaseId: indexN.fk_Phase, Checkin: indexN.Checkin, Chassis: indexN.ChassisPrep, Floor: indexN.Floor, Body: indexN.Body, Paint: indexN.Paint, PhaseName: indexN.PhaseName });
$scope.ph = ar;
/* $scope.PHID = 1; indexN.PId*/
})
});
})
.error(function(data) {
console.log("failure");
})
};
функция
$scope.showMe = function(ph)
{
console.log('2', $scope.ph[0].PId);
console.log('cool');
if ($scope.ph[0].PId >= 1)
{
$scope.show=true;
}
else if($scope.ph[0].PId <= 2)
{
$scope.show=false;
}
}
Вы делаете это от нг-контроллера? Если вы, вы можете сделать $ scope.showMe непосредственно из контроллера вместо использования ng-init. Это также предлагается angular-js: https://docs.angularjs.org/api/ng/directive/ngInit – kazenorin