¿Cómo creo un popover de arranque UI de AngularJS con contenido HTML?

Quiero crear un popover bootstrap con una etiqueta previa que contenga un objeto JSON embellecido. La implementación ingenua,

<span popover='
{[ some_obj | json:" " ]}

' popover-trigger='mouseenter'>

escapa el contenido antes de insertarlo en la ventana emergente. ¿Cuál es la mejor manera de especificar un cuerpo popover con contenido html?

ACTUALIZAR :

Como se puede ver en esto , ahora debería poder hacer esto sin anular la plantilla predeterminada.

ORIGINAL:

A partir de angular 1.2+ ng-bind-html-unsafe ha sido eliminado. deberías estar usando el servicio $ sce . Referencia .

Aquí hay un filtro para crear html de confianza.

 MyApp.filter('unsafe', ['$sce', function ($sce) { return function (val) { return $sce.trustAsHtml(val); }; }]); 

Aquí está la plantilla sobrescrita de Angular Bootstrap 0.11.2 haciendo uso de este filtro

 // update popover template for binding unsafe html angular.module("template/popover/popover.html", []).run(["$templateCache", function ($templateCache) { $templateCache.put("template/popover/popover.html", "
\n" + "
\n" + "\n" + "
\n" + "

\n" + "
\n" + "
\n" + "
\n" + ""); }]);

EDITAR: Aquí hay una implementación de Plunker .

EDIT 2: Como esta respuesta sigue recibiendo visitas, la mantendré actualizada lo mejor que pueda. Como referencia Aquí está la plantilla del repository bootstrap angular-ui. Si esto cambia, la plantilla de reemplazo requerirá que coincidan las actualizaciones y la adición de los atributos ng-bind-html=\"title | unsafe\" y ng-bind-html=\"content | unsafe\" para continuar trabajando.

Para una conversación actualizada revisa el problema aquí .

Use la directiva popover-template

Si está utilizando una versión de u -ui angular igual o superior a 0.13.0 , su mejor opción es usar la directiva popover-template . Aquí es cómo usarlo:

   

NB: No olvides las comillas alrededor del nombre de la plantilla en popover-template="'popover.html'" .

Ver demo plunker


Como nota al margen, es posible externalizar la plantilla de popover en un archivo html dedicado, en lugar de declararlo en un elemento

Web Analytics