>웹 프론트엔드 >JS 튜토리얼 >컨트롤러에서 AngularJS 뷰에 HTML을 안전하게 삽입하는 방법은 무엇입니까?

컨트롤러에서 AngularJS 뷰에 HTML을 안전하게 삽입하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-12-12 22:10:14608검색

How to Safely Insert HTML into AngularJS Views from Controllers?

AngularJS 컨트롤러에서 뷰에 HTML 삽입

AngularJS 컨트롤러에서 생성된 HTML 조각을 뷰에 삽입하는 것은 Angular의 보안 조치로 인해 어려울 수 있습니다. 직접적인 HTML 렌더링을 방지합니다. 이 문제를 해결하려면 HTML에서 ng-bind-html을 활용하세요.

<div ng-bind-html="thisCanBeusedInsideNgBindHtml"></div>

이렇게 하면 ngSanitize 또는 $sce를 사용하여 해결할 수 있는 보안 오류가 표시됩니다.

$sce 사용 :

컨트롤러에서 다음을 사용하여 HTML 문자열을 변환합니다. $sce.trustAsHtml():

$scope.thisCanBeusedInsideNgBindHtml = $sce.trustAsHtml(someHtmlVar);

ngSanitize 사용:

  1. angular-sanitize.min.js 리소스 포함:
<script src="lib/angular/angular-sanitize.min.js"></script>
  1. 포함 앱 모듈(일반적으로 app.js)에서 ngSanitize:
angular.module('myApp', ['myApp.filters', 'myApp.services', 'myApp.directives', 'ngSanitize'])

위 내용은 컨트롤러에서 AngularJS 뷰에 HTML을 안전하게 삽입하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.