2014-11-04 41 views
18

Ben açıldığında kalıcı bir pencere içine biraz modeli verileri aktarmak için çalışıyorum içine veri aktarmak. Kullanıcı bir öğeyi tıkladığında Açık kalıcı pencere ve tıklandığı ne ölçüde bilgi görüntülemek istiyor.Eğik-ui modal - modal

Ben bunu kalıcı penceresine verilerinin geçirilmesi için hariç istiyorum nasıl çalıştığını bir plunker oluşturduk.

kullanıyorum verileri geçiş yapmaya çalışan duyuyorum ng tıklama:

<img ng-src="{{item.picture}}" width="100" ng-click="open(item)"/> 

kimse bana bu konuda yardımcı olabilir misiniz? ya da beni doğru yöne yönlendir?

cevap

29

Nasıl this hakkında:

$scope.open = function (size) { 

var modalInstance = $modal.open({ 
    templateUrl: 'myModalContent.html', 
    controller: 'ModalInstanceCtrl', 
    resolve: { 
    items: function() { 
     return $scope.items; 
    }, 
    size: function() { 
     console.log('size: ', size); 
     return size; 
    } 
    } 
}); 

ve modal denetleyici içinde

şöyle artık çözülmüş boyut nesnesi eklemeyi unutmayın? Bir nesneyi döndüren resolve içindeki bir nesneyi yaratmaktı $scope.item = item; benim için çalıştı Ne item

13

Ben http://plnkr.co/FzU5SOv3pdZmAPAIOzdo senin için bir plunker yaptık.

Sen şu anda öğelerini çok gibi verilerinizi çözmek istiyoruz.

angular.module('ui.bootstrap.demo').controller('ModalInstanceCtrl', function ($scope, $modalInstance, items, size) { 

    $scope.items = items; 
    $scope.selected = { 
    item: $scope.items[0] 
    }; 
    $scope.size = size; 

    $scope.ok = function() { 
    $modalInstance.close($scope.selected.item); 
    }; 

    $scope.cancel = function() { 
    $modalInstance.dismiss('cancel'); 
    }; 
}); 
0

enjekte ederek,

Ben kararlılığı

resolve: { 
    items: function() { 
     return $scope.items; 
    }, 
    item: function(){ 
     return size; 
    } 
} 

öğeyi eklendi Ve controller yılında yapıyorum Bu paylaşmak istediğim değişkenleri tutar. sizin modal örneği kontrolörü tanımlarken

resolve: { 
    shared: function(){ 
    return { 
     name: 'Spencer', 
     numbers: [1, 2, 3] 
    } 
    } 
} 

shared nesnesine erişmek için, dahil.

app.controller('ModalInstanceController', function($scope, shared, $uibModalInstance,