2013-10-08 18 views
5

Utilizzo Angular v1.2.0rc1 e Angular-UI Bootstrap.

[modifica] Quello che voglio è un carico su richiesta con cache durante l'utilizzo di una accordeon.

Sto utilizzando un gruppo di fisarmoniche dal here. Con alcuni requisiti di back-end: vorrei caricare i contenuti all'interno della fisarmonica solo quando la fisarmonica è aperta (cliccata).

Quindi, desidero che la risposta venga memorizzata nella cache in modo da poter aprire/chiudere il numero desiderato e non sovraccaricare il server.

Ho provato a utilizzare ng-clic sull'intestazione, ma viene sovrascritto tramite AngularUI Bootstrap.

C'è un modo per risolvere questo?

+0

stai prendendo sul caricamento contenuto HTML della scheda su richiesta? – Chandermani

+0

sì, questo è quello che voglio caricare su richiesta durante l'utilizzo di un accordo! :) (ho appena aggiunto quel commento nella descrizione della domanda) – genuinefafa

risposta

7

È possibile utilizzare il tag intestazione fisarmonica per prendere il ng clic

<div accordion ng-controller="AccordionCtrl"> 
    <div accordion-group ng-repeat="group in groups"> 
    <div accordion-heading > 
     <div ng-click='loadGroup(group)'> 
     {{group.title}}   
     </div> 
    </div> 
    {{group.loaded}} 
    </div> 
</div> 

con questo controller

var AccordionMenuCtrl = ['$scope', '$http' function ($scope, $http) { 
    $scope.groups = [ 
    { 
     url: 'http://whatever', 
     title: 'whatever' 
    }, 
    { 
     url: 'http://whatever_else', 
     title: 'whatever else' 
    } 
    ] 

    $scope.loadGroup = function (group) { 
    $http.get(group.url).success(function (data) { 
     group.loaded = data 
    }); 
    } 
}]; 
+0

scusa per il ritardo, non ho ricevuto alcuna notifica della tua risposta! :(// modo interessante di risolvere il problema BTW – genuinefafa

+0

buona soluzione, ma ho trovato un problema. quando si chiude facendo clic sull'intestazione, viene chiamato il '$ scope.loadGroup'. come fermarlo? –

+0

@Krishnashidnekoppa si dovrebbe aggiungere logica nella funzione 'loadGroup',' ngClick' chiamerà sempre quando cliccato.: - / – genuinefafa

Problemi correlati