AngularJS简单的工厂相关错误

时间:2014-03-08 11:36:15

标签: angularjs

var demoApp = angular.module('demoApp', ['ngRoute']); 

demoApp.factory = ('simpleFactory', function () {

    var factory = {};
    var customers = [{ name: 'Touqeer', city: 'Multan' },
           { name: 'Arslan', city: 'RWP' },
           { name: 'Saleem', city: 'Taxila' }];``

    factory.getCustomers = function () {
        return customers;`enter code here`
    };

    return factory;
});

demoApp.controller('SimpleController', function ($scope, simpleFactory) {
    debugger
    $scope.customers = simpleFactory.getCustomers();
});

错误显示: 错误:[$ injector:unpr] http://errors.angularjs.org/1.2.14/ $ injector / unpr?p0 = simpleFactoryProvider%20%3C-implementFactory     在错误(本机)

2 个答案:

答案 0 :(得分:1)

demoApp.factory = ('simpleFactory', function () {

应该是

demoApp.factory('simpleFactory', function () {

答案 1 :(得分:1)

Hy,我做了一个plunker,所以你可以看到它应该如何工作:Plunker LINK,因为我认为你也会遇到其他一些东西。我在你提供的代码中发现错误的东西:

  • demoApp.factory = ('simpleFactory', function(){...}),应为demoApp.factory('simpleFactory', function () {...}) - ,因为您正在调用方法,而不是提供
  • 如果您想发表评论,请使用///* comment for multiple lines */不仅仅是放置'
  • 此外,如果你提供私人变量,你应该保持他们的名字不同,例如' _customers',这是一件小事,但它会帮助其他人理解你的意图。