2015-08-24 3 views
1

Я хотел бы использовать библиотеку jQuery OAuth в моем приложении.Require.js Uncaught TypeError: jqOAuth не является функцией

Прямо сейчас я пытаюсь инициализировать его в файле main.js.

Я определил пути для этой библиотеки, и это зависимость store.js:

requirejs.config({ 
    paths: { 
    store: "../Scripts/store.min", 
    jqueryOAuth: "../Scripts/jquery.oauth" 
    } 
}); 

И я взял пример из JQuery OAuth страницы, как сделать инициализацию:

define(["store", "jqueryOAuth"], function (store, jqOAuth) { 
    if (!store.enabled) { 
     alert("Store not enabled"); 
     return; 
    } 

    var auth = new jqOAuth({ // <--- Uncaught TypeError: jqOAuth is not a function 
     events: { 
      login: function() {}, 
      logout: function() {}, 
      tokenExpiration: function() {} 
     } 
    }); 
}); 

Когда я открываю свой сайт я получить сообщение об ошибке в консоли:

Uncaught TypeError: jqOAuth is not a function

Но если вы посмотрите файл jquery.oauth.js, вы увидите, что есть функция jqOAuth.

Вы хоть представляете, что я делаю неправильно? Я совсем новичок в работе с javascript, и, может быть, я что-то упустил?

ответ

0

Оказывается, что я переопределял глобальную функцию jqOAuth с моей локальной переменной с тем же именем.

Вот рабочий код:

define(["store", "jqueryOAuth"], function (store) { 
    if (!store.enabled) { 
     alert("Store not enabled"); 
     return; 
    } 

    var auth = new jqOAuth({ 
     events: { 
      login: function() {}, 
      logout: function() {}, 
      tokenExpiration: function() {} 
     } 
    }); 
}); 
Смежные вопросы