que cloak angularjs

cloak - Cargue la plantilla HTML del archivo en una variable en AngularJs



ng title (2)

Estoy trabajando con un formulario que necesita vincular HTML a un editor de texto enriquecido. La mejor manera de almacenar este contenido HTML sería un archivo HTML.

No puedo entender cómo cargar una plantilla HTML desde un archivo y asignarla a una variable.

Las directivas parecen ser capaces de hacer esto cuando se trabaja con templateUrl. Me preguntaba si esto es cualquier api de bajo nivel en angular para lograr lo mismo dentro de un controlador


Todas las plantillas se cargan en un caché. Hay un servicio $templateCache inyectable que puede usar para acceder a las plantillas:

app.controller(''testCtrl'', function($scope, $templateCache){ var template = $templateCache.get(''nameOfTemplate.html''); });


Usando $templateRequest , puede cargar una plantilla por su URL sin tener que incrustarla en su página HTML. Si la plantilla ya está cargada, se tomará de la memoria caché.

app.controller(''testCtrl'', function($scope, $templateRequest, $sce, $compile){ // Make sure that no bad URLs are fetched. You can omit this if your template URL is // not dynamic. var templateUrl = $sce.getTrustedResourceUrl(''nameOfTemplate.html''); $templateRequest(templateUrl).then(function(template) { // template is the HTML template as a string // Let''s put it into an HTML element and parse any directives and expressions // in the code. (Note: This is just an example, modifying the DOM from within // a controller is considered bad style.) $compile($("#my-element").html(template).contents())($scope); }, function() { // An error has occurred }); });

Tenga en cuenta que esta es la forma manual de hacerlo, y que en la mayoría de los casos la forma preferible sería define una directive que obtenga la plantilla utilizando la propiedad templateUrl .