2016-09-16 5 views
0

hier ist mein .html:kann keine Daten von ng-Modell erhalten signalr mit

<ul class="messages list-unstyled" ng-repeat="newMessage in messages"> 
        <li> 
         <p> 
          <span class="username">{{newMessage.username}}</span><br /> 
         </p> 
         <p> 
          <span> {{newMessage.message}}</span> 
         </p> 

         <p class="no-pad-bottom date-posted">Send {{ newMessage.date }} <span /></p> 

         <div class="comments"> 
          <ul class="list-unstyled" ng-repeat="newComment in comments"> 
           <li> 
            <p> 
             <span class="commentor"> {{newComment.username}}</span> 
             <span> {{newComment.message}}</span> 
            </p> 
            <p class="no-pad-bottom date-posted">Send {{ newComment.date }} <span /></p> 
           </li> 

          </ul> 

          <form class="add-comment"> 
           <div class="row"> 
            <div class="col-md-10"> 
             <input type="text" class="form-control" ng-model="myComment" placeholder="Add a comment" /> 
            </div> 
            <div class="col-md-2"> 
             <button class="btn btn-default btn-sm" type="submit" ng-click="addComment(newMessage.id)">Comment</button> 
            </div> 
           </div> 
          </form> 
         </div> 
        </li> 
       </ul> 

alles funktioniert. ich kann meine Nachrichten, und ich kann auch Nachrichten senden, aber ich bekomme null von ng-Modell = „MyComment“

hier ist die Methode in js Controller

$scope.addComment = function (messageId) { 
     myChatHub.server.addComment(messageId, userName, $scope.myComment); 
    }; 

können Sie mir bitte senden sagen, was falsch ist ?

Antwort

0

Du .. in ng-model die goldene Regel der immer mit einem Punkt zu brechen oder in anderen Worten, ein Objekt

ng-repeat schafft ein Kind Umfang und Ihre primitiven zugewiesen ng-model daher gibt es nur in untergeordnetem Bereich seit Primitiven habe keine Vererbung.

erstellen Modellobjekt in der Steuerung

$scope.model={} 

Und verwenden Sie dann, dass ng-model="model.myComment" und Ihren Beitrag ändern:

$scope.addComment = function (messageId) { 
     myChatHub.server.addComment(messageId, userName, $scope.model.myComment); 
}; 

This 3 minute video wird sehr aufschlussreich

+0

danke sehr! – mrnvdvmv

Verwandte Themen