require()
기능을 사용할 수 없습니다 왜 궁금하네요
두 번째
require()
호출 던졌습니다
// I'm using define's sugar syntax
define(function(require) {
// This works fine. It assigns myModule to the myModule variable (no callback needed)
var myModule = require('myModule');
var getModule = function(name) {
// This doesn work. Using require() here expects a callback
return require(name);
};
return getModule;
});
(그러나 DevTools로 함께 살펴 본다하는 것을 보여줍니다 <name>
실제로)로드 :
Uncaught Error: Module name <name> has not been loaded yet for context: _
왜 처음 require()
호출 그냥 모듈 (이 콜백 방식으로 할 필요 없음)을 반환하지만 두 번째 require()
전화는 콜백 작동합니까?
확실? 그것은 꽤 철저합니다. –
@SimonSmith docs는 왜 내 함수의 범위 내에서 콜백과 함께 require()를 사용해야하는지 설명하지 않습니다. 바깥 쪽에서 나는 var dep = require ('dep')가 될 수있다. – jviotti
@jviotti 나는 이것이 늦은 대답이라는 것을 알고있다. 그러나 @Simon Smith가 그의 대답에서 지적했듯이 그것이 작동하지 않는 이유는 단순히 정상적인 코드처럼 실행됩니다. Requirejs는 실제로'require'에 대한 호출을 위해 함수를 구문 분석하여 의존성 트리를 만들 수 있습니다. 그렇게하기 위해서는 주어진 모듈의 모든 의존성을 먼저 알아야합니다. 실제로 모든 것을 가져 오기 전에 모든 종속성을 알아야하기 때문에이를 동적으로 수행 할 수 없습니다. – Davy8