2013-09-16 2 views
0

이상한 문제가 있습니다. 나는이메소드 가져 오기에 실패했습니다.

require({ 
    paths: { 
     'template': 'tmpl.min', 
     'videoupload.widget': 'jquery.ui.videoupload' 
    } 
}, ['js/main_video.js'], function(App) { 
    App.initial_video_upload(); 
}); 

및 파일 jquery.ui.videoupload.js

define(['template','videoupload.widget'],function() { 
     function initial_video_upload(){ 
      'use strict'; 
      $('#videoupload').videoupload({ 
       //...some code 
      }); 
     } 
     return{ 
      initial_video_upload: initial_video_upload 
     } 
    } 
); 

이, 나는 tmpl.min.js에 정의 된 tmpl 방법에 대한 몇 가지 호출을 가지고,하지만 난 메시지를 얻을

Uncaught TypeError: Object [object Object] has no method 'tmpl' 

답변

0

여기에는 두 가지 문제가 있습니다.

  1. 첫 번째 스 니펫이 설정 옵션을 require 함수에 전달 중입니다. require은 종속성을로드하고이를 사용하여 일부 코드를 실행하는 방법입니다.

    define(['template','videoupload.widget'], 
    // these are now accessible within the function's scope: 
    function(template, videoupload.widget) { 
         function initial_video_upload(){ 
          'use strict'; 
          $('#videoupload').videoupload({ 
           //...some code 
          }); 
         } 
         return{ 
          initial_video_upload: initial_video_upload 
         } 
        } 
    ); 
    
:

// configurations to be used in your module definitions 
requirejs.config({ 
    paths: { 
     'template': 'tmpl.min', 
     'videoupload.widget': 'jquery.ui.videoupload' 
    } 
}); 

// load your main module and kick things off 
require(['js/main_video.js'], function(App) { 
    App.initial_video_upload(); 
});) 
  • 두 번째 조각은 콜백로 전달 종속성을 선언하는 것이 아니라 : 당신이 require.js하는 구성 옵션을 전달하려면, requirejs.config 당신이 원하는 무엇인가

    또한 jQuery가 videoupload.widget의 종속성이라고 가정합니다. 어떻게 그걸 적재하고 있니?

    requirejs.config({ 
        paths: { 
         'template': 'tmpl.min', 
         'videoupload.widget': 'jquery.ui.videoupload' 
        }, 
        shim: { 
         "videoupload.widdget": ["jquery"] 
        } 
    }); 
    
  • +0

    정지 기능 (템플릿, videoupload.widget)'로 업데이트 한 후 같은 오류가가'..., BTW'jQuery'입니다 : 당신은 당신의 requirejs.config에 추가 "심"구성을 추가해야 할 수도 있습니다 파일 맨 위의'require ([ 'js/lib/jquery/jquery.min.js'])'에 의해로드 됨 – user1611830

    +0

    파일 구조에 문제가있을 수 있다고 생각합니다. 발췌, 너무 큰 경우). 일반적으로 파일 당 하나의 require를 사용해야합니다. –

    +0

    안녕 다시 : 나는 아직도 문제가 있습니다. 사실 Uncaught TypeError : Object [object Object]에는 'tmpl'메소드가없고 'Uncaught Error : 모듈에 대한 타임 아웃로드 : tmpl'이 있습니다. 아이디어가 있습니까? – user1611830

    관련 문제