2011-09-15 3 views
0

Aptana studio를 사용하여 샘플 jquery 코드에서 AIR 응용 프로그램을 작성하고 있습니다. 샘플 코드는 템플릿 플러그인을 사용합니다. 자세한 내용은 http://api.jquery.com/template-tag-tmpl/ "재귀 적으로 중첩 된 {{tmpl}} 태그를 사용하는 트리 뷰입니다."AIR 응용 프로그램 내부의 jquery 템플릿이 보안 위반을 throw합니다.

초기 렌더링은 잘 작동하지만 난 확장 샘플 노드를 클릭하면 보안 예외가 발생합니다 - 오류 : Adobe AIR 런타임 보안 위반을 응용 프로그램 보안 샌드 박스에 자바 스크립트 코드 (기능 생성자)에 대한

디버거 위반이 상위 템플릿의 업데이트 호출에 있음을 지적합니다.

 $("#samplesList").delegate(".toggle", "click", function(){ 
      /* Toggle expanded property on data, then update rendering */ 
      var tmplItem = $.tmplItem(this); 
      tmplItem.data.expanded = !tmplItem.data.expanded; 
*>>>   tmplItem.update(); >>> VOILATION HERE* 
     }).delegate(".folderItem", "click", function(){ 
      alert($.tmplItem(this).data.description); 
     }); 

의견이 있으십니까?

답변

2

유일한 해결책은 처음에 (문서 준비에서) 템플릿을 사전 컴파일하는 것입니다. 그것은 좋은 연습이고 어쨌든 실행 시간을 절약 할 수 있습니다.

보안 위반을 초래하는 모든 작업 목록은 here입니다. 템플리트 (또한, underscore.js _.template 함수)는 Function 생성자를 사용하여 Adobe 정책에 위배됩니다.

관련 문제