2014-10-20 9 views
0

나는 RequireJS 새로운 그리고 난 그 사용의 뒤에 논리를 이해하려고 노력 중이 야 로드 zepto 모듈은

I가 HTML 스크립트 태그

requirejs.config(
    {shim: { 
     'zepto': ['//cdnjs.cloudflare.com/ajax/libs/zepto/1.1.4/zepto.min.js'], 
     'js/zepto.addon.min' : 'zepto', 
     'js/zepto.swipeslide' : ['zepto', 'js/zepto.addon.min'] 
    }} 
    ); 

define(['//cdnjs.cloudflare.com/ajax/libs/zepto/1.1.4/zepto.min.js','js/zepto.addon.min','js/zepto.swipeslide'],function(){ 
    console.log('this', this, 'arguments', arguments); 
});` 

I 사이의 다음 스크립트 플러그인 앞에 필요한 zepto 파일을로드하려고합니다. 그러나 나는 내가 requirejs의 문서에서 오류를 찾고 있어요하지만 왜 이런 일이 분명히 무엇을하지 않는

Uncaught Error: Mismatched anonymous define() module: function(){ console.log('this', this, 'arguments', arguments); }

을 얻고있다.

여러분들은 내게 평범한 사람의 말로 무엇을 할 수 있습니까?

답변

2

그 설정은별로 의미가 없습니다. 경로를 정의하고 심을 정의한 다음 해당 모듈을 이름순으로 요구해야합니다.

requirejs.config({ 
    // setup global dependencies 
    shim: { 
     'addon' : 'zepto', 
     'swipeslide' : ['zepto', 'addon'] 
    }, 
    // define module paths 
    paths: { 
     'zepto': '//cdnjs.cloudflare.com/ajax/libs/zepto/1.1.4/zepto.min', 
     'addon': 'js/zepto.addon.min', 
     'swipeslide': 'js/zepto.swipeslide' 
    } 
}); 

define(['zepto', 'addon', 'swipeslide'], function($) { 
    console.log('this', this, 'arguments', arguments); 
}); 
+0

"shims"는 정의 할 때 스크립트에 대한 종속성을 링크하는 "별칭"과 유사하다고 말하고 있습니까? – Kendall

+1

어쩌면? 나는 그렇게 생각하지 않는다. 'paths'는'module : path' 형식의 별명입니다. 'shims'는'module : [dependencies]'형식의 의존성 정의입니다. Shim은 다른 종속성과 관련하여 특정 순서로 필요한 패키지에 사용됩니다. – Mathletics

+0

@Mathletics .... 나는 당신의 코드를 시도했지만 어떤 이유로 함수의 인수가 모두 "정의되지 않음"을 반환합니다 ... 스크립트 변수를 요구하지 않습니다. – Kendall