Как получить доступ к методам сервиса AngularJS из простого JavaScript (jQuery-Plugin) - PullRequest
0 голосов
/ 26 декабря 2018

Как добавить один файл javascript в другой плагин Jquery для доступа к функциям из javascript

startTransactionController.js

var app = angular.module('myApp');
app.controller('startTransactionCtrl', [
    '$scope',    
    'secondFileService',
function ($scope, secondFileService){
..
..
secondFileService.ICanAccessFunctionHere();
..
}
]);

validateTransaction.js - jQuery-Plugin

(function($) {
    'use strict';
     $.fn.validateTransaction = function( someObject ) {
        var _this =  this;
..
..
/*** secondFileService.ICanNotAccessFunctionHere();; ***/
Here, how can I call this function ???
..
..
}
})(jQuery);

В validateTransaction.js как я могу внедрить зависимость secondFileService для вызова функции ??Как я сделал в startTransactionController.js

Ответы [ 2 ]

0 голосов
/ 26 декабря 2018

Попробуйте использовать это:

angular.element(document.body).injector().get("secondFileService").ICanAccessFunctionHere()

Также вы можете найти эти полезные:

angular.element(domElement).scope(), чтобы получить текущую область действия элемента

angular.element(domElement).injector()чтобы получить текущий инжектор / службы приложения

angular.element(domElement).controller(), чтобы получить экземпляр ng-контроллера.

0 голосов
/ 26 декабря 2018
$.getScript("PathToFile/validateTransaction.js", function(){
   alert("Script loaded but not necessarily executed.");
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...