2015-09-04 69 views
1

我正在爲我的移動網絡應用使用移動Angular UI框架。使用MobileAngularUI動態生成模態

This Page解釋瞭如何生成模態指令(他們稍微改變引導框架)

我設法複製的例子,但是當我換行指令在NG重複生成多個情態動詞,它是沒有任何工作更

<div ui-content-for="modals"> 
    <div ng-repeat="p in UseCaseCtrl.getProjects()" > 
     <div class="modal" ui-if="modal{{ p.getId() }}" ui-state="modal{{ p.getId() }}"> 
     <div class="modal-backdrop in"></div> 
     <div class="modal-dialog"> 
      <div class="modal-content"> 
      <div class="modal-header"> 
       <button class="close" 
         ui-turn-off="modal{{ p.getId() }}">&times;</button> 
       <h4 class="modal-title">{{ p.getName() }}</h4> 
      </div> 
      <div class="modal-body"> 

       ...Lorem... 

      </div> 
      <div class="modal-footer"> 
       <button ui-turn-off="modal{{ p.getId() }}" class="btn btn-default">Close</button> 
       <button ui-turn-off="modal{{ p.getId() }}" class="btn btn-primary">Save changes</button> 
      </div> 
      </div> 
     </div> 
     </div> 
    </div> 
    </div>   

至於我經歷過,這個問題似乎來自UI狀態=「模式{{p.getId()}},因爲它再次工作時,我只寫死一個(即set ui-state =「modal1」)

我錯過了什麼嗎?使用ng-repeat生成模態的任何解決方法?

感謝

回答

1

我的控制器,而不是ui-turn-on="modal{{ p.getId() }}使用ng-click = "functionName(p.getId())

詳情:

$scope.functionName = function (id) { 
    SharedState.initialize($rootScope, 'modal'+id); 
    $rootScope.Ui.turnOn('modal'+id); 
}; 

注意:您需要注射對sharedState的控制器。

我做到了,成功!

+0

太棒了,它工作的很好!我是一種模式,用戶可以進行一些更改,並在「保存」PUT請求時被觸發。如果該承諾返回成功,以下代碼將關閉我的模式:'$ rootScope.Ui.turnOff('nameOfModal');' –