2017-02-17 1 views

Antwort

0

Update:

Im Folgenden finden Sie den Code

<search-results customers-d ="customers" ng-repeat="CM in customersD></search-results> 
in main.html geschrieben haben

Es folgt die Richtlinie search Sie geschrieben haben:

myApp.directive('searchResults', function() { 
    return { 
     templateUrl: 'directives/search.html', 
     scope: { 
      customersD: '=', 
     } 
    } 
}); 

Folgen g ist die Hauptsteuerung die Sie geschrieben haben:

myApp.controller('mainController', ['$scope', '$log', function($scope, $log) { 
    $scope.customers = [{ name:'Rishabh'},{name:'Krishna'}] 
}]); 

Und search.html sich wie folgt:

<a href="#" class="list-group-item"> 
    <h4 class="list-group-item-heading"> hi </h4> 
    <p class="list-group-item-text">{{CM.name}}</p> 
</a> 

Jetzt Dinge, die Sie tun, ist falsch:

  1. Schließen Zitat fehlt in ng-repeat von main.html
  2. Der Versuch, in main.html auf customersD zuzugreifen, während kein Array namens customsD definiert ist d in $ scope von mainController.
  3. Der Versuch, auf CM in search.html zuzugreifen (was eine Vorlage der isolierten Bereichsanweisung ist). Sie können nur Kunden in Search.html

Ich denke, Ihr Verständnis von Bereichen ist nicht korrekt. Es wäre gut, wenn du genug liest, bevor du hier Fragen stellst. :)

Zurück Antwort: Sie vermissen Zitat in ng-repeat schließen und falsche Verwendung von Variablen Sie wie folgt vor:

<search-results customers-d ="CM" ng-repeat="CM in customers"></search-results> 
+0

hinzugefügt, dass quote und ur variable immer noch nicht name und aslo plz erklären die Gründe für die Änderung der Variable –

+0

Hey Pranav Thanks For Your Reply! Ihr zweiter Punkt sagt Versuchen, in main.html auf customersD zuzugreifen, während in $ scope von mainController kein Array namens customsD definiert ist. Aber das ist der Grund, warum ich Kunden definiert habe, die auf Kundenobjekt zugreifen. –

+0

'customers-d =" customers "' übergibt 'customers' object an directive und kann in directive mit' customsD' aufgerufen werden, aber das Array, das du versuchst zu wiederholen ist 'customsD', die nicht im Bereich von mainController vorhanden ist. So wird keine Schleife ausgeführt und nichts wird angezeigt. – pranavjindal999

0

main.html

<div class="list-group"> 
    <search-results customers-d ="customers" ng-repeat="CM in customers"></search-results> 
</div> 

Richtlinie Änderungen in app.js

myApp.directive('searchResults', function() { 
return { 
    restrict : "AE", 
    templateUrl: 'directives/search.html' 
} 
});