2016-10-26 3 views
1

i eine Richtlinie dynamisch erstellt habe und dann übergab ich ein Datum zu dieser Richtlinie aber diese Richtlinie nicht gerendert und i Daten in Link-Funktion zugreifen kann übergeben, und hier meinen Snippet-Code:dynamisch Richtlinie

var table = $compile("<user-priv data=object ><user-priv>")($scope); 
angular.element(document).find('#privModal').find('.modal-body').append(table); 
angular.element(document).find('#privModal').modal('show') 

und hier ist die Richtlinie Code

.directive('userPriv', [function() { 
    return { 
     restrict: 'A', 
     scope: { 
      data: '=?' 
     }, 
     templateUrl: 'file/angular/templates/privList.html', 
     link: function(scope, iElement, iAttrs) { 
      console.warn(scope.data); 
     }, 
     controller: function($scope) { 
      console.log('test'); 
     } 
    }; 
}]) 

Antwort

1

Parameter zur Richtlinie verabschiedet werden immer als hTML-Attribut dargestellt: in Ihrem Code Sie einige Doppelpunkte fehlen "".

ändern $compile Zeile:

var table = $compile("<user-priv data="object" ><user-priv>")($scope); 
+0

danke für interessant, aber es funktioniert nicht –

2

nicht sicher, was Sie aus Ihrer Post erfolgreich waren oder nicht, aber eine Sache sieht aus:
restrict: 'A' sollte restrict: 'E', da Sie die Richtlinie als ein Element verwenden , nicht als Attribut.

+1

danke für Ihre Nachricht ... ich habe diesen Fehler nicht bemerkt, sublime Autocomplete ist der Grund. Danke vielmals :) –

Verwandte Themen