#angularjs
#angularjs
Вопрос:
В этом коде, взятом из Angular.org:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Example - example-example16-production</title>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.14/angular.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.14/angular-sanitize.js"></script>
<script src="script.js"></script>
</head>
<body ng-app="ngBindHtmlExample">
<div ng-controller="ngBindHtmlCtrl">
<p ng-bind-html="myHTML"></p>
</div>
</body>
</html>
Он отображает текст:
Я — HtmlString со ссылками! и другие материалы
Я понятия не имею, откуда взят этот текст. Я искал два файла javascript, и его там нет. Если я изменю «myHTML» на какой-нибудь другой текст, ничего не отобразится. Может кто-нибудь, пожалуйста, объяснить, что такое ng-bind-html?
Ответ №1:
Я предполагаю, что вы говорите о примере из:https://docs.angularjs.org/api/ng/directive/ngBindHtml
В каком случае это находится в контроллере в файле script.js:
angular.module('ngBindHtmlExample', ['ngSanitize'])
.controller('ngBindHtmlCtrl', ['$scope', function ngBindHtmlCtrl($scope) {
$scope.myHTML =
'I am an <code>HTML</code>string with <a href="#">links!</a> and other <em>stuff</em>';
}]);
Следующая строка задает это:
$scope.myHTML =
'I am an <code>HTML</code>string with <a href="#">links!</a> and other <em>stuff</em>';
Надеюсь, это поможет.
Комментарии:
1. Я заметил, что упустил из виду script.js . Где хранится этот скрипт?
2. Вы можете получить доступ к нему в Chrome, нажав клавишу f12, перейдя на вкладку Исходники, перейдя в папку examples / example-example16, а затем script.js
3. Так это встроенный скрипт в Google Chrome?
4. Нет, скрипты могут быть автоматически загружены с сервера и необязательно должны поставляться с html в теге <script>
5. Что не ясно, так это то, что script.js файл содержит внедрение зависимости «ngSanitize», но это не используется. Итак, как выполняется очистка?