gpt4 book ai didi

javascript - 在 Controller 中注入(inject)服务时出错

转载 作者:行者123 更新时间:2023-11-30 12:14:54 24 4
gpt4 key购买 nike

我正在尝试使用 AngularJs 使用 Web API,但遇到了棱 Angular 分明的一面,这让我很难弄清楚。

我创建了 HTML、 Controller 和服务。我觉得一切正常,但在运行应用程序时出现注入(inject)错误。

html
<html >
<head>
<title>Motors </title>
<script src="/Scripts/angular.js"></script>
<script src="/Scripts/angular-route.js"></script>
<script src="/View/motorController.js"></script>
</head>
<body ng-app="myApp" ng-controller="motorController">
<div>
<table class="table">
<tr>
<th>Id</th>
<th>Name</th>
<th>Country</th>
</tr>
<tr ng-repeat="m in motors">
<td>{{m.Id}}</td>
<td>{{m.Name}}</td>
<td>{{m.Country}}</td>
</tr>
</table>
</div>
</body>
</html>

AngularJs Controller

var module = angular.module('myApp', [])
.controller('motorController', ['$scope', '$motorService',function ($scope, motorService) {

getMotors();
function getMotors() {
motorService.GetAllMotors()
.success(function (motors) {
$scope.motors = motors;
})
.error(function (error) {
$scope.status = 'Unable to load motor data: ' + error.message;
});
}
}]);

Angular 服务

motorApp.factory('motorService', function ($http) {
var urlBase = 'http://localhost:40738/api';
var motorService = {};

motorService.GetAllMotors = function () {
return $http.get(urlBase + '/GetAllMotors');
};

return motorService;
});

进入 chrmoe 浏览器控制台时出错

Error: [$injector:unpr] Unknown provider: $motorServiceProvider <- $motorService <- motorController

最佳答案

您在 MotorService 前面有一个额外的 $,更改

来自:

 .controller('motorController', ['$scope', '$motorService',function ($scope, motorService) 

收件人:

 .controller('motorController', ['$scope', 'motorService',function ($scope, motorService)

关于javascript - 在 Controller 中注入(inject)服务时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32665230/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com