AngularJS에서 경로/보기 모드를 사용하여 대형 웹 사이트 또는 응용 프로그램을 작성할 때 초기화 중 컨트롤러 및 템플릿과 같은 모든 사용자 정의 파일을로드하는 것은 좋은 생각이 아닙니다. 가장 좋은 방법은 초기화시 필요한 파일 만로드하는 것입니다. 이 파일은 하나의 연결 또는 여러 파일에 따라 달라질 수 있지만 특정 경로에서만 사용됩니다. 경로를 전환하면 언로드 된 파일이 필요에 따라로드됩니다. 이것은 페이지 초기화 속도를 향상시킬뿐만 아니라 대역폭 폐기물을 방지합니다.
인터넷의 대부분의 기사는 $ loureprovider 및 타사 서비스를 통한 컨트롤러의 게으른로드에 대해 이야기합니다. 예를 들어, 주문형 AngularJS 컨트롤러를로드하면 자세히 설명합니다. 그러나 컨트롤러의 게으른로드, HTML/$ StateProvider가있는 템플릿에 관한 기사는 거의 없습니다. $ StateProvider와 관련된 많은 소스 코드를보고 HTML/Template의 게으른로드 문제를 해결했지만 여전히 동정심 인 컨트롤러의 게으른로드 문제를 해결하지 못했습니다. 시간 문제로 인해 조사 결과가 먼저 정리되고 조사는 향후에도 계속 될 것입니다.
HTML/템플릿의 게으른로드와 관련하여 HTML 파일과 홈페이지 파일을 다른 디렉토리에 배치해야합니다. 그렇지 않으면 자동으로로드됩니다. 마찬가지로 TemplateUrl을 사용하여 파일을 지정할 수 없습니다. 그렇지 않으면 자동으로로드됩니다. $ stateProvider.state의 템플릿 속성은 문자열 값과 함수를 지원하므로 파일의 중복로드를 방지하기 위해 HTML 파일을로드하고 캐시하도록 함수를 정의 할 수 있습니다. 컨트롤러가 같은 일을하기를 원했지만 불행히도 컨트롤러 기능 정의를 찾을 수 없었습니다. 많은 방법을 시도했지만 실패했습니다. 앞으로 소스 코드를 연구하여 누락 된 내용을 확인하겠습니다. 코드를 직접 업로드하면 논리가 복잡하지 않으므로 많이 말하지 않을 것입니다.
// 중복 네트워크로드를 방지하기 위해로드 된 HTML과 컨트롤러를 녹화하십시오. $ ionic.files = {html : {}, 컨트롤러 : {}}; // 지연된로드 html 메소드를 선언합니다. html 및 cache $ itionic.files.html [name] = jquery.ajax ({url : 'views/' + name + ".html", async : false}). responceetext;} return $ itionic.files.files.files.files.files.files.files.files.files.files.files.files.files.files.files. = $ .getScript ( '자산/컨트롤러/' + name + '.js'); jQuery.ajax ({ "url": '자산/컨트롤러/' + 이름 + '.js', "datatype": "script", "async": false}); // console.log ( " + name); "/로그인", 컨트롤러 : resolveController ( "logincontroller"), template : function () {return $ itionic.gethtml ( "login");위는 편집자가 소개 한 AngularJS 지연 HTML 템플릿에 대한 전체 설명입니다. 나는 그것이 당신에게 도움이되기를 바랍니다. 궁금한 점이 있으면 메시지를 남겨 주시면 편집자가 제 시간에 답장을 드리겠습니다. Wulin.com 웹 사이트를 지원해 주셔서 대단히 감사합니다!