2017-05-20 12 views
0

나는 드래그 앤 드롭하여 페이지에 넣을 수있는 다양한 준비된 HTML을 기본 드래그 앤 드롭으로 만듭니다. Angular2 : 배열에서 HTML을 주입하고 뷰를 렌더링합니다.

난 당신이

element=[ 
text: {html: '<p> asdasdasdas</p>'}, 
list: {html: '<ul><li></li></ul>'}; 
img: {html: '<img src="placeholder.jpg"/>'} 
] 

이 방법의 페이지에 HTML을 주입하기 위해 드래그 할 수 있습니다 HTML의 목록이 포함 된 객체있어?

또는 HTML 스 니펫을 구성 요소로 생성해야하며 요소 선택기에서 요소 객체로 참조되고 각도 선택기를 삽입하고 뷰를 렌더링해야합니까?

답변

1

당신은 NG-바인드 - HTML은 HTML을

<div ng-bind-html="element.text.html"></div> 
<div ng-bind-html="element.list.html"></div> 
<div ng-bind-html="element.img.html"></div> 

공지 사항을 바인딩 할 수 있습니다 : 당신은 내가 가진 경우 발생하는 NG-바인드 HTML

+0

를 사용하기 위해 귀하의 응용 프로그램에 ngSanitize 모듈을 포함해야 그 HTML 안의 각 클래스와 HTML을 바인드하면 이벤트 리스너도 바인딩됩니까? –

+0

컨트롤러에 $ sce를 주입 한 다음 trustAsHtml 함수로 html을 설정해야합니다. 예 :'$ scope.htmlText = $ sce.trustAsHtml ($ scope.element.text.html)' –

+0

$ 범위는 각도 1이고, 나는 각도 2의 친구에 대해 말하고 있습니다 :) –