ng-click을 사용하여 html을 가져오고 싶습니다. 이 html에도 ng-click 이벤트가 있습니다. 저는 js를 사용하여 이 html을 찾아 팝업 레이어에 할당합니다. 이 HTML의 ng-click 이벤트가 잘못되었습니다. 어떻게 해결하나요?
$scope.readmore_maincomment = 함수(이벤트){
코드는 이렇게 얻은 내용입니다. 메소드가 잘못 사용될 수도 있고, Angular와 jQuery가 혼합되어 있을 수도 있습니다. 이 HTML 내용을 얻는 방법을 알려주실 분은 ng-click을 눌러주세요. HTML도 적용할 수 있습니다
Angular는 시작 시 DOM을 탐색하고 html로 바인딩된 모든 지시문을 찾아 컴파일하고 링크한 다음 `v-click`과 같은 명령이 응답 이벤트를 해당 DOM 요소에 바인딩합니다. HTML 문자열을 DOM에 직접 삽입하면 Angular는 이 HTML 문자열의 지침을 구문 분석할 기회가 없습니다. 이 문제를 해결하기 위해 Angle에 내장된 $compile 서비스가 있습니다.
사용법:
$compile 서비스 주입
$compile(htmlstring 또는 domelement)(범위)
htmlstring을 컴파일하면 마지막으로 링크 뒤의 return을 dom에 삽입합니다
$compile()은 템플릿을 범위에 바인딩하는 링크 함수를 반환합니다
공식 웹사이트 문서:
angularjs의 아이디어는 DOM 운영을 피하려고 노력해야 합니다. 귀하의 요구 사항은 다른 방법을 통해 실현되어야 하며, 귀하의 목표는 데이터 바인딩을 통해 달성되거나 이를 위해 ng-template을 사용할 수 있습니다.
DOM의 작업은 모두 명령어에 있습니다. 현재 작동하려는 DOM 구조를 명령어로 작성해야 하며, 복사하려는 HTML의 매개변수에 요소가 있습니다. ngclick.복사 후에도 동일하게 적용됩니다.