Whenever we load .html
files serving some controller in angular.
Does angular
makes an ajax
call to retrive that html
.
Like this piecec of code.
.state('home', {
url: '/',
templateUrl: '/Modules/Signin/signin.html',
controller: 'SigninCtrl'
})
I mean to ask while fetching signin.html
ajax
call made? ajax
call is made where can i find some documentation written about it.When your that code executes, Angular first lookup the HTML template in $templateCache
with the id
/Modules/Signin/signin.html
.
If it doesn't find that in the $templateCache
then yes, Angular will do an AJAX
call using $http
to get the HTML content and it will be loaded as normal resource which should be located at the URL like:
http://example.com/Modules/Signin/signin.html
You can verify it in your browser's developer's console that an AJAX call was performed.
Read more about $templateCache.
Basically, every template get's stored in the $templateCache
when it is not stored already in the cache. So if you define the following in your index.html
or any place (like where your angular
is installed):
<script type="text/ng-template" id="/Modules/Signin/signin.html">
<p>This is the content of the template</p>
</script>
Now as your Angular bootstraps, there will be a data in your $templateCache
with id /Modules/Signin/signin.html
so now your state
code will not make any AJAX instead it will simply load the content defined above.