In realtà, su questo non c'è documentazione.
Ero alla ricerca di una soluzione e ho trovato la tua domanda qui, quindi sono andato a controllare il loro codice sorgente.
È possibile utilizzare md-list > md-list-item
con diverse restrizioni. Nel tuo caso, l'idea è di avvicinarsi al loro menu dei documenti, su sidenav (la loro è una direttiva chiamata menu-link
, sul link stesso), e ho apportato alcune modifiche nel mio codice originale (che erano vicine alla tua) :
<md-list>
<md-list-item
ng-repeat="section in ::admin.sections"
ng-class="{
'active': $state.includes(section.active),
'disabled': section.disabled
}"
ng-click="!section.disabled && $state.go(section.state)">
<span ng-bind="::section.label"></span>
</md-list-item>
</md-list>
in sostanza, non è tutti gli elementi che sono accettati come action-trigger all'interno md-list-item
. md-checkbox
e md-switch
sono gli unici child accettati per eseguire un processo, all'interno della funzione preLink
sulla direttiva md-list-item
.
L'altro modo è di inserire uno ng-click
nello stesso md-list-item
o in un elemento figlio all'interno di esso.
Il processo preLink
è un wrapper, che utilizza un pulsante "non in stile" che esegue un "proxy" sul clic e rende visivamente l'effetto di ripple.
Anche altri attributi, come gli attributi, non vengono trasferiti a questo "proxy", quindi un disabled
non può essere utilizzato direttamente, è necessario simularne i risultati. Nel mio caso, interrompo l'azione di ng-clic e inserisco una classe nell'elemento.
fonte
2015-05-20 05:02:32
"ripple" su o ? In http://thecodeplayer.com/walkthrough/ripple-click-effect-google-material-design sembra che sia sull'intero elenco piuttosto che sul contenuto. –
paje007
#WeirdHackThatWorks '' –
poxip