2015-09-08 1 views
-2

Есть ли способ использовать функции этих библиотек на моей угловой фабрике?Как использовать fuctions из других js-библиотек в angualr фабрике и контроллерах?

<head>  
<script type="text/javascript" src="js/3rdparty/strophe.js"></script> 
<script type="text/javascript" src="js/3rdparty/xml2json.js"></script> 
<script src="js/app.js"></script> 
<script src="js/services.js"></script> 
<script src="js/controller.js"></script> 
</head> 

У меня есть завод и контроллер. Я хочу использовать библиотеки (strophe.js, xml2json.js) с моим угловым кодом.

Это, как я использовать его, но она всегда дает мне ошибку

angular.module('fairy_chat.services',['globals']) 

// ----------- chat factory : ------------------ 
.factory('chat_factory', function (CONSTANT, strophe){ 
    var chat_service_obj = { 
     var connection = new Strophe.Connection(CONSTANT.BOSH_SERVICE); 
     console.log(connection); 
    connect_server:function(){ 
      console.log('constant=='+ CONSTANT.BOSH_SERVICE); 
    } 

    } 
    return chat_service_obj; 
}); 

Мои controller.js

angular.module('fairy_chat.controllers',['fairy_chat.services','ionic','globals']) 

.controller('LoginCtrl', function($scope, $state, chat_factory) { 

    $scope.data = { 
     username:"", 
     password:"" 
    }; 

    $scope.login = function(strophe){ 
     chat_factory.connect_server(); 
    } 
}) 
+0

И ошибка ?! – deceze

+0

@deceze: Uncaught SyntaxError: Неожиданный идентификатор var connection = new Strophe.Connection (CONSTANT.BOSH_SERVICE); поскольку он не может получить доступ к функциям строфы. –

+2

Нет, это ** синтаксическая ошибка **. Он не жалуется на то, что какой-то объект не найден, у вас есть полный палец основного синтаксиса Javascript. – deceze

ответ

1

У вас есть вар в вар
Это Безразлично «т смотреть прямо:

var chat_service_obj = { 
     var connection = new Strophe.Connection 

Должно быть больше как

var chat_service_obj = { 
     connection: new Strophe.Connection 

Попробуйте для определения 'чат фабричного':

// ----------- chat factory : ------------------ 
.factory('chat_factory', function(CONSTANT, strophe) { 

    var connection = new Strophe.Connection(CONSTANT.BOSH_SERVICE); 
    console.log(connection); 

    var chat_service_obj = { 
     connect_server: function() { 
      console.log('constant==' + CONSTANT.BOSH_SERVICE); 
     } 
    } 
    return chat 
    _service_obj; 
}); 
+0

Спасибо. Решила мою проблему. На самом деле я включил «globals» в качестве depencdency в app.js. Это не было необходимо. –

Смежные вопросы