Сервис в angularJS не работает.Asp.Net Core - PullRequest
0 голосов
/ 30 января 2019

Я создал простой проект MVC на ASP.NET Core 2.0 с одним представлением, с которого я начинаю всю свою работу с angularJS.У меня проблема с услугами.Неважно, вставлять сервис в app.run или нет, я всегда ошибаюсь.

var app = angular.module('myApp', ['ui.router']);

app.config(function ($stateProvider, $urlRouterProvider) {

  $urlRouterProvider.otherwise('/home');

  $stateProvider
  .state('home', {
    url: '/home',
    templateUrl: 'app/pages/home.html',
    authenticate: false
  });
});

app.run(['$rootScope', '$state', 'TestServices', 
  function ($rootScope, $state, TestServices) {

    $rootScope.$on('$stateChangeStart',
      function (event, toState, toParams) {
        console.log(toState.authenticate);
        //need run service method here!
      }
    );
  }
]);

Мой сервис

var app = angular.module('myApp', []);
 app.service('TestServices', function () {

 this.cal = function() {
    console.log("Heloo")
  }

});

Я не знаю, в чем проблема.Я пытался evryhing.Я не могу вызвать метод из служб.Я делаю это везде, но безрезультатно.Я не могу вызвать любой метод из моих услуг!

Страница индекса cshtml

@{
Layout = null;
 }

<head>
<script type="text/javascript" 
src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.9/angular.js"> 
</script>
<script src="~/app/pages/TaxFactory.js"></script>
<script type="text/javascript" 
 src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui- 
  router/0.3.1/angular-ui-router.js"></script>

<script src="~/app/pages/app.js"></script>
</head>
 <body ng-app="myApp">
<div ui-view></div>
</body>

Здесь ссылка на проект, если вам это нужно.https://drive.google.com/open?id=1Dg8zcGEySUU8UbsL339B-gZgr7QrsNDF Я думаю, что-то с UI-роутером и форматом cshtml, такими как стартовая страница?

1 Ответ

0 голосов
/ 30 января 2019

Вы переопределяете переменную приложения в app.js.Поэтому TestService больше недоступен.

Один из способов избежать этого - изменить TaxFactory.js на;

var taxFactory = function () {
    this.cal = function () {
        console.log("Heloo");
    };
};

И добавить эту строку перед app.run в app.js;

app.service('TestServices', taxFactory);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...