2015-07-12 40 views
-1

这里是我的JavaScript文件AngularJS JavaScript函数没有要求

(function() { 
var app = angular.module('app'); 

var controllerId = 'officium.incident.list'; 
app.controller(controllerId, [ 
    '$scope', 'abp.services.incidentsystem.incident', 
    function ($scope, officiumService) { 
     var vm = this; 

     alert('ssssss') 

     officiumService.GetAllAssignedIncidents().success(function (data) { 
      vm.incidents = data.incidents; 
     }); 

    } 
]); 

我有警报被称为当我加载我的网页,所以我知道的JS和网页的正确链接。但我不明白为什么我的'GetAllAssignedIncidents'函数不起作用。我在调用这个方法的时候在服务器上放了一个断点,但它从来没有打过它,这意味着我的JS或网页可能有问题?

<div class="panel panel-default" ng-controller="officium.incident.list as vm"> 
<div class="panel-heading" style="position: relative;"> 

     <ul class="list-group" ng-repeat="incident in vm.incidents"> 
      <div class="list-group-item"> 
       <span ng-class="{'incident-description-active'">{{incident.IncidentDescription}}</span> 
       <br /> 
       <span class="incident-assignedto">{{incident.LogID}}</span> 
      </div> 
     </ul> 

</div> 

我的应用服务层功能。

public async Task<GetAllAssignedIncidentsOutput> GetAllAssignedIncidents() 
    { 
     var incidents = _incidentRepository.GetAllAssignedIncidents(); 

     return new GetAllAssignedIncidentsOutput 
     { 
      Incidents = AutoMapper.Mapper.Map<List<IncidentDto>>(incidents) 
     }; 

    } 

API控制器Builder代码

public class OfficiumWebApiModule : AbpModule 
    { 
    public override void Initialize() 
    { 
     //This code is used to register classes to dependency injection system for this assembly using conventions. 
     IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly()); 

     //Creating dynamic Web Api Controllers for application services. 

     DynamicApiControllerBuilder 
      .ForAll<IApplicationService>(typeof(OfficiumApplicationModule).Assembly, "incidentsystem") 
      .Build(); 
    } 
+0

你有你的语法错误的JavaScript,当加载页面,右键 - 单击检查元素看到的错误在控制台中。 –

+2

你的代码被写入的方式,你有'abp.services.incidentsystem.incident'作为'officumService'传递给控制器​​函数。所以你真的*正在调用'abp.services.incidentsystem.incident.GetAllAssignedIncidents()'。这个函数实际上是否存在,如果存在,你能显示它的代码吗? – Claies

+0

AS @Claies说过,你的服务是怎样的?你在控制台上的错误是什么?你能分享这些东西吗? –

回答

0

最有可能你引用,你居然要引用的服务模块。你还在引用一个allready定义的模块'app'而不是定义它,这是故意的吗?我相信你想要的东西更是这样的:

var app = angular.module('app', ['abp.services.incidentsystem.incident']); 

    var controllerId = 'officium.incident.list'; 
    app.controller(controllerId, [ 
     '$scope', 'officiumService', 
     function($scope, officiumService) { 
     var vm = this; 

     alert('ssssss') 

     officiumService.GetAllAssignedIncidents().success(function(data) { 
      vm.incidents = data.incidents; 
     }); 

     } 
    ]);