I'm relatively new to AngularJS so I'm still very much in a learning phase,
so please bear with me :-)
I've a service which purpose is to get a html template via $http, cache it
and then compile it via $compile with some scope data attached.
The purpose of this is to create a HTML email template (a string
essentially) which I can send to my backend and send it to a recipient.
But I ran into a peculiar (perhaps, it might just be me not being in the
"angular-zone") exception.
When my html template consists of html, head and body tags - the $compile
function
doesn't run or doesn't run correctly, I'm getting nothing back. Remember,
this $compile will not be added to the DOM in anyway.
But when I do the same thing, with same (scope)data with the same template
just without these HTML defined tags, it works.
Which made me think that I either am using the $compile function wrong or I
am using it to the wrong purpose and perhaps there are better ways to
accomplish what I want.
This is my email service:
$http.get('my-html-template.html', {
cache: $templateCache
}).then(function(res){
var compiled = $compile(res.data)(scope);
$timeout(function() {
console.log(compiled.html());
});
});
I've created a plnkr so you can run it
<http://plnkr.co/edit/8moTd2aAu2OzZVX7axeN?p=preview>.
I could of cause just skip the HTML tags all together and insert them e.g.
in the back-end so it's more out of curiosity that I'm wondering.
*note: also posted on SO
<http://stackoverflow.com/questions/36459415/get-html-compile-with-html-and-body-tags>*
--
You received this message because you are subscribed to the Google Groups
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.