requireJS 2.x를 사용하고 있습니다. 일부 튜토리얼 (및 공식 문서)에서 가끔
requirejs.config({ [...] });
requirejs(["module"]) ...
그리고 때때로
require.config({ [...] });
require(["module"]) ...
이 두 함수 (require 및 requirejs)간에 차이점이 있습니까? 문서에서 그것에 대한 단어를 찾을 수 없습니다. :(
requireJS 2.x를 사용하고 있습니다. 일부 튜토리얼 (및 공식 문서)에서 가끔
requirejs.config({ [...] });
requirejs(["module"]) ...
그리고 때때로
require.config({ [...] });
require(["module"]) ...
이 두 함수 (require 및 requirejs)간에 차이점이 있습니까? 문서에서 그것에 대한 단어를 찾을 수 없습니다. :(
답변:
그들은 똑같습니다.
그 이유는 일부 환경에 이미.이있을 수 있으며 require
,이 경우 RequireJS가이를 덮어 쓰지 않고requirejs
이 커밋을 참조하십시오-https: //github.com/jrburke/requirejs/commit/be45948433b053921dc6a6a57bf06d04e13b3b39
requirejs
그대로 액세스 할 수 있습니다 require
. .NET Framework에서 추가 스크립트를로드하기 위해 React 구성 요소에서 유용하다는 것을 알았습니다 componentDidMount
.
requirejs
와 require
동일한?RequireJS 2.1.15로, require
그리고 requirejs
콘솔에서 수행 할 수있는이 시험에 의해 입증 할 수있는 글로벌 공간에서, 참으로 "동일"입니다 :
> require === requirejs
true
테스트 반환 true
은 그들이 정확히 동일한 함수 객체 임을 알려줍니다 . 코드가 비슷하거나 동일한 두 가지 기능이 아닙니다. 그들은 같은 대상, 기간입니다.
그러나 실행할 때 함수에 전달되는 define(['require'], function (require) {
The require
는 일반적으로 global 과 다릅니다require
.
require
또는 사용해야합니까 requirejs
?때에 따라 다르지. RequireJS는 AMD 로더이지만 마을에서 유일한 로더는 아닙니다. AMD 사양 을 100 % 준수하는 코드를 작성 하여 코드를 사용하는 누군가가 코드를 수정하지 않고도 원하는 로더를 사용할 수 있도록 하려면 RequireJS에 한정되어 있으므로 require
글로벌 수준에서 requirejs
사용해야합니다. 다른 AMD 로더는이를 정의하지 않습니다. AMD의 스펙을 정의 require
하지만 requirejs
.
전역 require
을 정의하는 다른 것을로드하는 경우 requirejs
충돌을 피하기 위해 전역 수준에서 사용해야 합니다.
모듈 내에서 항상를 사용 define
하여 require
. 전역 공간에 충돌이 있는지 여부에 관계없이이 작업을 수행해야합니다.
좋습니다. 그들은 실제로 "정확히 동일"할 수 있습니다. 그런 다음 하나와 다른 것을 사용하는 이유에 중점을 둡니다.
명확하지 않은 것은 "모범 사례"로 간주되어야하는 것입니다. requirejs가 "일부 환경에 이미 요구 사항이있을 수있는 경우"추가 보증을 제공한다면, 요구 구성을 정의하기 위해 항상 requirejs 함수를 사용하는 것이 좋지 않을 것입니다. 필수 기능보다?
Also, what happens if the unthinkable happens and the environment in question not only already has a "require" defined but also has a "requirejs" defined? Does that mean we should have a requirejsjs too? And so on...?
$
하고 jQuery
있습니다. 환경에서 이미 require
. 그것은 매우 가장자리 사건과 사용을 권장 require
하지만, 필요하지 - github.com/amdjs/amdjs-api/blob/master/AMD.md#global-variables-
이미로드 된 동일한 오픈 웹 사이트입니다.
그런 다음 Chrome 콘솔을 엽니 다.
콘솔에 require를 입력하고 Enter를 누르십시오.
콘솔에 requirejs를 입력하고 Enter 키를 누릅니다.
이름이 다른 동일한 기능임을 알 수 있습니다.