2016-10-24 1 views
2

ich eine Angular JS Anwendung haben,ng-init mit Bedingungsanweisungen

<div class="col-lg-12" ng-init="getTableData('{{URL::route('get_repair_category')}}')"> 

Wenn das Laden der Seite der GetTableData wird ausgeführt, aber ich möchte eine Variable $ rootScope.Dealer und schalten Sie den Funktionsnamen überprüfen Initialisierung.

ZB: wenn $ rootScope.Dealer Wert vorhanden ich die Funktion getDealerData namens wanto ausführen

Und wenn der Wert nicht notwendig stellen Sie die GetTableData Funktion auszuführen.

Wie kann ich dies in anglar js Vorlage machen.

Ich habe gerade versucht die ng-wenn, aber es funktioniert nicht ...

Antwort

3

Sie einfache Syntax Javascript verwenden können in ng-init-Richtlinie wie folgt aus:

<div class="col-lg-12" ng-init="Dealer ? getDealerData('{{URL::route('get_repair_category')}}') : getTableData('{{URL::route('get_repair_category')}}')"> 

hier ein plnkr für Sie (ich habe Backend Route Generation Text geändert): https://plnkr.co/edit/CJOMT0g50BCWa3j02rcS?p=preview

1

Versuchen Sie, diese

var app = angular.module("myApp", []); 
 
app.controller("myCtrl", function($scope, $rootScope) { 
 

 
    $rootScope.dealer = ["a", "b", "c"]; 
 

 
    $scope.getTableData = function(x) { 
 
    return x; 
 
    } 
 
    $scope.getDelearData = function() { 
 
    return $rootScope.dealer; 
 
    } 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="myApp" ng-controller="myCtrl"> 
 
    <div ng-init="data = getDelearData() || getTableData('table data')"> 
 
    {{data}} 
 
    </div> 
 
</div>

Verwandte Themen