我错过了啥 - 不同文件中的 Angular 服务
Posted
技术标签:
【中文标题】我错过了啥 - 不同文件中的 Angular 服务【英文标题】:What am I missing - Angular service in different file我错过了什么 - 不同文件中的 Angular 服务 【发布时间】:2018-07-11 23:11:06 【问题描述】:RAPRequestService.js
angular.module('RecruitmentAuthorisationProcessApp').factory('RAPRequestsService ', function ($http)
console.log('RAPRequestsService.js loaded...')
var RAPRequestsService = ;
RAPRequestsService.getRAPRequests = function ()
return $http.get('/RAPRequests/GetRAPRequestsJSON');
;
return RAPRequestsService;
);
RAPRequestsController.js
angular.module('RecruitmentAuthorisationProcessApp').controller('RAPRequestsCont roller', ['$scope','RAPRequestService',function ($scope, RAPRequestService)
$scope.getRAPRequests = function ()
RAPRequestsService.getRAPRequests().success(function (rapRequests)
$scope.data = rapRequests;
console.log($scope.data);
).error(function (error)
$scope.status = 'Unable to load rap requests: ' + error.message;
console.log($scope.status);
);
]);
RecruitmentAuthorisationProcessApp.js
var RecruitmentAuthorisationProcessApp = angular.module('RecruitmentAuthorisationProcessApp', ['ngRoute']);
RecruitmentAuthorisationProcessApp.factory('RAPRequestsService', RAPRequestsService);
当我加载视图并打开开发者工具时,我看到了错误:
未捕获的错误:[$injector:nomod] http://errors.angularjs.org/1.6.5/$injector/nomod?p0=RecruitmentAuthorisationProcessApp 在角度:1 在角度:1 在 t(角度:1) 在 Object.module (角度:1) 在 RecruitmentAuthorisationProcessApp:1
我的实现缺少什么?
我的脚本已在 Bundle.Config 中注册并加载到 _Layout.cshtml。
【问题讨论】:
您很可能在某个地方有错字。首先修复控制器名称中的空白。似乎您要两次声明工厂。底部应用声明后的那一行是什么? 更新:我承认我有一些拼写错误(RAPRequestsController.js 中缺少 's')我现在已经修复了,还删除了 RecruitmentAuthorisationProcessApp.js 中的第二行,但仍然出现相同的错误。 【参考方案1】:所以问题在于我如何尝试在 BundleConfig.cs 中注册服务 我试图做一个 .IncludeDirectory 和 angular 不喜欢那样。相反,我不得不使用 .Include(..specify file path) 单独包含该服务。 我不知道为什么它拒绝看起来更干净的 .IncludeDirectory ,但在时间允许时会重新审视它。 对于任何有类似问题的人,请参考这篇文章:https://blog.mariusschulz.com/2015/02/22/bundling-and-minifying-an-angularjs-application-with-asp-net-mvc
【讨论】:
以上是关于我错过了啥 - 不同文件中的 Angular 服务的主要内容,如果未能解决你的问题,请参考以下文章
VS2019 中 nmake 的位置不是通用的。还是我错过了啥?
ASP.NET C# OData 服务 + 导航属性 + $expand = null。我错过了啥?