Sto cercando di utilizzare più filtri come sotto,Come utilizzare il filtro nl2br e linky insieme in Angularjs?
<p><span ng-bind-html="someVar | nl2br | linky"></span></p>
che rende nulla. Tuttavia, quando cambio l'ordine dei filtri, come di seguito
<p><span ng-bind-html="someVar | linky | nl2br"></span></p>
linky funziona, ma nl2br non riesce a convertire le interruzioni di linea a fr.
La seguente implementazione può essere utilizzato per nl2br:
.filter('nl2br', function($sce) {
return function(input) {
return $sce.trustAsHtml(input.replace(/\n/g, '<br>'));
}
}
Codice di riferimento per il filtro nl2br http://pastebin.com/1TsdF0V6 –
'$ sce.trustAsHtml' non restituisce una stringa,' linky' si aspetta uno. – zeroflagL
Sto aprendo questa domanda per una taglia in quanto questo è un problema comune, ma inaspettatamente complesso che ti insegna su cose che non volevi sapere in primo luogo. So che è importante gestire l'HTML immesso dall'utente come non affidabile, ma la complessità dell'utilizzo di $ sce con una semplice catena di due filtri mi fa letteralmente impazzire. – jsalonen