AngularJs дезинфицирующий ввод - PullRequest
0 голосов
/ 26 марта 2020

Я использую angular 1.6.4

var app = angular.module('a', ['ngSanitize']);


app.controller('BaseController', function($scope, $sce) {
   $scope.str = "<script>alert('hello world')</script>";
   $scope.sanitized = $sce.trustAsHtml($scope.str);
});

Я пытаюсь получить очищенную форму строки, как показано выше, но она всегда возвращает один и тот же $ scope.str. Что я здесь не так делаю? Спасибо -

Это также не удалило теги сценария

app.controller('BaseController', ['$scope', '$sce', function( $scope, $sce) {
    $scope.str = "<script>alert('hello world')</script>";
    $scope.sanitized = $sce.trustAsHtml($scope.str);
}]);

1 Ответ

0 голосов
/ 26 марта 2020

Небольшой сбой в вашем коде, который $sce должен быть введен на уровне контроллера.

app.controller('BaseController', ['$sce', function($sce) {
    // ... [your code]
 }]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...