728x90
반응형
질문 : AngularJS 컨트롤러에서보기에 HTML 삽입
AngularJS 컨트롤러에서 HTML 조각을 만들고이 HTML을보기에 표시 할 수 있습니까?
id: value
쌍의 중첩 된 목록으로 전환해야하기 때문입니다. 따라서 HTML 이 컨트롤러에서 생성되고 이제이를 표시하려고합니다.
모델 속성을 만들었지 만 HTML을 인쇄하지 않고는 뷰에서 렌더링 할 수 없습니다.
최신 정보
생성 된 HTML을 따옴표 안의 문자열로 각도 렌더링하여 문제가 발생하는 것으로 보입니다. 이 문제를 해결하기 위해 노력할 것입니다.
컨트롤러 예 :
var SomeController = function () {
this.customHtml = '<ul><li>render me please</li></ul>';
}
보기 예 :
<div ng:bind="customHtml"></div>
제공 :
<div>
"<ul><li>render me please</li></ul>"
</div>
답변
Angular 1.x의 경우 ng-bind-html
을 사용하십시오.
<div ng-bind-html="thisCanBeusedInsideNgBindHtml"></div>
이 시점 attempting to use an unsafe value in a safe context
발생하므로이를 해결 하려면 ngSanitize 또는 $ sce를 사용해야합니다.
$sce.trustAsHtml()
을 사용하여 html 문자열을 변환하십시오.
$scope.thisCanBeusedInsideNgBindHtml = $sce.trustAsHtml(someHtmlVar);
두 단계가 있습니다.
- angular-sanitize.min.js 리소스를 포함합니다.
<script src="lib/angular/angular-sanitize.min.js"></script>
- js 파일 (controller 또는 일반적으로 app.js)에 ngSanitize를 포함합니다.
angular.module('myApp', ['myApp.filters', 'myApp.services', 'myApp.directives', 'ngSanitize'])
출처 : https://stackoverflow.com/questions/9381926/insert-html-into-view-from-angularjs-controller
728x90
반응형
'프로그래밍 언어 > HTML,CSS,JS' 카테고리의 다른 글
이전 버전의 Node.js로 변경하는 방법 (0) | 2021.06.18 |
---|---|
package.json의 로컬 종속성 (0) | 2021.06.17 |
JSON을 간단한 사전으로 역 직렬화하는 방법<string,string> ASP.NET에서? (0) | 2021.06.17 |
JavaScript를 사용하여 다른 페이지로 이동하는 방법 (0) | 2021.06.17 |
CSS 이미지 크기, 비율에 맞게 늘이는 방법 (0) | 2021.06.16 |