프런트엔드에서 모듈성을 사용해야 하는 이유는 무엇입니까?
이번에는 프론트엔드에서 모듈화를 사용해야 하는 이유를 알려드리겠습니다. , 프론트엔드 모듈화 시 주의사항은 무엇인가요? 실제 사례를 살펴보겠습니다.
CMD, AMD, CommonJS 사양은 무엇을 의미하나요? 어떤 애플리케이션이 있나요?
AMD(Asynchronous Module Definition)는 모듈과 종속성을 단계별로 로드할 수 있는 메커니즘을 지정합니다. 이는 특히 CommonJS 사양의 확장인 브라우저 측의 비동기 로딩에 해당됩니다. 12
Syntax
define(id?, dependency?, Factory);1
id: 정의에 있는 모듈의 이름, 선택 사항입니다. 이 매개 변수가 제공되지 않으면 모듈 이름은 기본값으로 지정되어야 합니다. 모듈 로더가 요청한 스크립트 이름을 지정합니다. .
종속성: 현재 모듈이 의존하고 모듈이 정의한 모듈로 식별되는 배열 리터럴입니다. 종속성 매개변수는 선택사항입니다. 이 매개변수를 생략하면 기본값은 ["require", "exports", "module"]입니다. 그러나 팩토리 메소드의 길이 속성이 3보다 작으면 로더는 함수의 길이 속성에 지정된 개수의 인수를 사용하여 팩토리 메소드를 호출하도록 선택합니다.
Factory 메소드 팩토리: 모듈이 실행될 함수나 객체를 초기화합니다. 함수라면 한 번만 실행되어야 합니다. 객체인 경우 이 객체는 모듈의 출력 값이어야 합니다.
예
define('modal', ['jQuery', 'dialog'], function($, Dialog){$('.modal').show(); Dialog.open(); });1234
AMD의 라이브러리에는 RequireJS, 컬, Dojo 등이 포함됩니다. CommonJS는 서버측 모듈에 대한 사양이며 Node.js는 이 사양을 채택합니다. Node.JS는 처음으로 js 모듈성 개념을 채택했습니다. 모듈에는 함수인 자유 변수 "require"가 있습니다. "require" 함수는 모듈 식별자를 받습니다. "require"는 외부 모듈에서 내보낸 API를 반환합니다. 종속성 주기가 발생하면 전이적 종속성이 필요할 때 외부 모듈의 실행이 완료되지 않았을 수 있습니다. 이 경우 "require"에 의해 반환된 객체에는 require 함수를 호출하기 전에 준비된 출력이 최소한 포함되어야 합니다. 현재 모듈 실행 환경을 입력합니다). 요청한 모듈을 반환할 수 없는 경우 "require"는 오류를 발생시켜야 합니다. 모듈에는 실행 중에 모듈이 자체 API를 추가할 수 있는 개체인 "exports"라는 무료 변수가 있습니다. 모듈은 출력의 유일한 표현으로 "내보내기" 개체를 사용해야 합니다.
Example
exports.add = function() { var sum = 0, i = 0, args = arguments, l = args.length; while (i < l) { sum += args[i++]; } return sum; };1234567
CMD(Common Module Definition)는 SeaJS 승격 과정에서 생성됩니다.
CMD는 중국의 Yu Bo가 제안했습니다. AMD 사양과의 주요 차이점은 정의 모듈과 종속성 도입 부분입니다. AMD는 모듈을 선언할 때 모든 종속성을 지정하고 공식 매개변수를 통해 이를 모듈에 전달해야 합니다.
Example
define(function(require, exports, module) { exports.add = function() { var sum = 0, i = 0, args = arguments, l = args.length; while (i < l) { sum += args[i++]; } return sum; }; });123456789
AMD 모듈과 비교하여 CMD는 Node의 CommonJS 사양 정의에 더 가깝습니다:
define(factory);1
종속성 부분에서 CMD는 동적 소개를 지원합니다.
define(function(require , exports , module){ //the module code goes here });123
require, 내보내기 및 모듈은 형식 매개변수를 통해 모듈에 전달됩니다. 언제든지 수입하세요.
이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트기타 관련 기사를 주목하세요!
추천 도서:
위 내용은 프런트엔드에서 모듈성을 사용해야 하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









RXJ를 사용하여 스트림에서 작동 할 때 코드가 적용되지 않는 이유는 무엇입니까? 학습 RXJS ...

인라인 블록 요소의 잘못 정렬 된 디스플레이에 대한 이유와 솔루션과 관련하여. 웹 페이지 레이아웃을 작성할 때, 우리는 종종 이상하게 겉보기에 이상한 디스플레이 문제가 발생합니다. 비교하다...

코드 취약점, 브라우저 호환성, 성능 최적화, 보안 업데이트 및 사용자 경험 개선과 같은 요소로 인해 H5 페이지를 지속적으로 유지해야합니다. 효과적인 유지 관리 방법에는 완전한 테스트 시스템 설정, 버전 제어 도구 사용, 페이지 성능을 정기적으로 모니터링하고 사용자 피드백 수집 및 유지 관리 계획을 수립하는 것이 포함됩니다.

RXJ를 사용하여 RXJ를 사용하여 스트림의 요소에서 작동 할 때의 문제에 대한 토론 ...

요소의 SCSS 변수를 재정의하여 사용자 정의 테마를 구현하는 방법은 무엇입니까? 요소 사용 ...

vue 응용 프로그램을 개발할 때 라우터 폴더 아래에 index.js 파일에 vuerouter를 등록해야 할 필요성이 있으면 종종 라우팅 구성에 문제가 발생합니다. 특별한...

플렉스 레이아웃의 보라색 슬래시 영역에 대한 질문 플렉스 레이아웃을 사용할 때 개발자 도구 (d ...)와 같은 혼란스러운 현상이 발생할 수 있습니다.

H5 페이지 제작의 장점에는 경량 경험, 빠른 로딩 속도 및 사용자 유지 개선이 포함됩니다. 교차 플랫폼 호환성, 다른 플랫폼에 적응할 필요가 없어 개발 효율성을 향상시킵니다. 유연성 및 동적 업데이트, 감사가 필요하지 않아 콘텐츠를 쉽게 수정하고 업데이트 할 수 있습니다. 기본 앱보다 비용 효율적이고 개발 비용이 낮습니다.
