首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么在工厂Angular JS中未知函数"getJalse“

为什么在工厂Angular JS中未知函数"getJalse“
EN

Stack Overflow用户
提问于 2015-07-14 19:16:01
回答 1查看 45关注 0票数 0

我正在尝试从angular js向php发出ajax请求。但是我没有得到我已经通过php文件发送的数据。

出厂时存在未知函数"getJalse“错误

我的消息来源:

文件app.js:

代码语言:javascript
复制
(function () {
var app = angular.module('myApp', ['ngRoute']);

app.config(function ($routeProvider) {
    $routeProvider

            .when('/', {
                controller: 'contentsCtrl',
                templateUrl: 'views/contents.php'
            })

            .when('/jalse/:jalseId', {
                controller: 'recordsCtrl',
                templateUrl: 'views/jalse.php'
            })

            .otherwise({redirectTo: '/'});
     });

}());

文件jalseFactory.js:

代码语言:javascript
复制
(function () {

'use strict';

var jasleFactory = function ($http, $q) {

    var factory = {};

    factory.getJalses = function () {
        var deferred = $q.defer();

        $http({method: 'GET', url: 'includes/records.php'}).
                success(function (data, status, headers, config) {
                    deferred.resolve(data);
                }).
                error(function (data, status, headers, config) {
                    deferred.reject(data);
                });
        return deferred.promise;
    };
    return factory;
};

jasleFactory.$inject = ['$http', '$q'];
angular.module('myApp').factory('jasleFactory', jasleFactory);

}());

文件recordsCtrl.js:

代码语言:javascript
复制
(function () {
'use strict';

var recordsCtrl = function ($scope, $routeParams , jasleFactory) {
    var jalseId = $routeParams.jalseId;

    $scope.records = jasleFactory.getJalse();

    $scope.jalse = null;

    function init() {
        for (var i = 0, len = $scope.records.length; i < len; i++) {
            if ($scope.records[i].contentID == parseInt(jalseId)) {
                $scope.jalse = $scope.records[i];
                break;
            }
        }
    }

    init();

};

recordsCtrl.$inject = ['$scope' , '$routeParams' , 'jasleFactory'];

angular.module('myApp').controller('recordsCtrl', recordsCtrl);

}());
EN

回答 1

Stack Overflow用户

发布于 2015-07-14 20:48:53

因为您的工厂有getJalses,而您正在调用getJalse。

变化

代码语言:javascript
复制
factory.getJalses = function () 

代码语言:javascript
复制
factory.getJalse = function () 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31405066

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档