Angular-Ui-Router+ocLazyLoad 동적 로드 스 크 립 트 예제

2138 단어 angular동적 로드
angular 과정 을 사용 하기 전에 동 료 는 한꺼번에 불 러 오 는 방식 을 취 했 습 니 다.index 페이지 에서 모든 js 와 css 를 한꺼번에 불 러 옵 니 다.이런 불 러 오 는 방식 은 교육 과 소형 프로젝트 에 만 적합 합 니 다.중대 형 은 사용 을 권장 하지 않 고 불 러 오 는 속 도 는 사용자 체험 에 영향 을 줍 니 다.
Ui-Router 를 사용 한 후에 제 첫 번 째 생각 은 모든 기능 을 구성 하 는 것 입 니 다.보 기 를 요청 할 때 이 페이지 의 js 와 css 를 불 러 오 는 것 입 니 다.index 페이지 는 주로 필수 파일 을 불 러 옵 니 다:angular.js
그래서 이렇게 쓰 려 고 시 도 했 지만 angular 가 잘못 되 었 습 니 다.컨트롤 러 가 메 인 프로그램 에 주입 되 지 않 았 기 때 문 입 니 다.
뒤에 angular 라 이브 러 리 에서 ocLazyLoad 를 발 견 했 습 니 다.이것 은 angular 맞 춤 형 스 크 립 트 로 더 입 니 다.15K 밖 에 없습니다.
그것 을 사용 하 는 것 은 매우 간단 하 다.
순서대로 파일 불 러 오기

<script src="framework/angular/angular.min.js"></script> 
<script src="framework/angular-ui-router.js"></script> 
<script src="framework/ocLazyLoad.min.js"></script> 
<script src="framework/app.js"></script> 
평소 경로 와 마찬가지 로 resolve 가 더 필요 할 뿐 입 니 다.
경로 가 렌 더 링 되 기 전에 resolve 대상 을 실행 합 니 다.예 를 들 어 js 와 css 를 불 러 오 는 데 사 용 됩 니 다.물론 다른 용도 도 있 습 니 다.
코드:(스 크 립 트 중복 불 러 오 는 것 은 걱정 하지 마 십시오.이전에 불 러 온 스 크 립 트 는 브 라 우 저 에서 캐 시 됩 니 다)

angular.module('myRouters', ['ui.router','oc.lazyLoad']) 

.state('index', { 
  url: '/index', 
  title: ' | !', 
  views: { 
    'A': { 
      templateUrl: 'components/header/header.html', 
      controller: 'headerCtrl' 
    }, 
    'C@index': { 
      templateUrl: 'components/header/h1.html', 
      controller: 'H2Ctrl' 
    } 
  }, 
  resolve: { 
    loadMyCtrl: ['$ocLazyLoad', function ($ocLazyLoad) { 
      return $ocLazyLoad.load(['components/header/H2.js', 
        'components/header/header.js', 
        'components/header/h3.js', 
        'components/header/header1.css']); 
    }] 
  } 
}) 
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기