gpt4 book ai didi

javascript - Angular : Using factory inside a controller

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

这是我第一次尝试使用 Angularjs,我正在尝试创建一个服务并在 Controller 中使用它:

var appTest = angular.module("appTest", ["ngRoute"]);
var appTestControllers = angular.module('appTestControllers', []);

appTest.config(['$routeProvider', '$locationProvider',
function($routeProvider, $locationProvider) {

$routeProvider.
when('/', {
templateUrl: 'partials/home.html',
controller: 'HomeCtrl'
});

$locationProvider.html5Mode(false);
}
]);

appTest.factory("booksApi", function($http){

var _getBooks = function() {
return $http.get('http://localhost/editora-voo/website/books.json');
};

return{
getBooks: _getBooks
};

});


appTest.controller('HomeCtrl', ['$scope', '$http', function($scope, $http, booksApi) {

booksApi.getBooks().success(function(data) {
$scope.books = data;
});
}]);

但它返回一个错误:无法读取未定义的属性“getBooks”

最佳答案

您错过了在您的 Controller 依赖项数组中添加 booksApi 依赖项,您应该先添加它,然后在 Controller 的函数中使用它。

Controller

appTest.controller('HomeCtrl', ['$scope', '$http', 'booksApi', //<--missed dependency here
function($scope, $http, booksApi) {
booksApi.getBooks().then(function(response) {
$scope.books = response.data;
});
}]);

Plunkr Here

关于javascript - Angular : Using factory inside a controller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31372210/

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