/
githubmirror
/
angular.js
Обзор
Документация
Войти
/
githubmirror
/
angular.js
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/ng/directive/script.js
49 строк
2 KB
Peter Bacon Darwin
docs(examples): give all examples a name
28 июл 2016, 12:58
28 июл 2016, 12:58
13b7bf0
Код
Авторство
О чём код?
'use strict'; /** * @ngdoc directive * @name script * @restrict E * * @description * Load the content of a `<script>` element into {@link ng.$templateCache `$templateCache`}, so that the * template can be used by {@link ng.directive:ngInclude `ngInclude`}, * {@link ngRoute.directive:ngView `ngView`}, or {@link guide/directive directives}. The type of the * `<script>` element must be specified as `text/ng-template`, and a cache name for the template must be * assigned through the element's `id`, which can then be used as a directive's `templateUrl`. * * @param {string} type Must be set to `'text/ng-template'`. * @param {string} id Cache name of the template. * * @example <example name="script-tag"> <file name="index.html"> <script type="text/ng-template" id="/tpl.html"> Content of the template. </script> <a ng-click="currentTpl='/tpl.html'" id="tpl-link">Load inlined template</a> <div id="tpl-content" ng-include src="currentTpl"></div> </file> <file name="protractor.js" type="protractor"> it('should load template defined inside script tag', function() { element(by.css('#tpl-link')).click(); expect(element(by.css('#tpl-content')).getText()).toMatch(/Content of the template/); }); </file> </example> */ var scriptDirective = ['$templateCache', function($templateCache) { return { restrict: 'E', terminal: true, compile: function(element, attr) { if (attr.type === 'text/ng-template') { var templateUrl = attr.id, text = element[0].text; $templateCache.put(templateUrl, text); } } }; }];