Javascript 错误:[ng:areq]参数不是thinkster.io';s教程

Javascript 错误:[ng:areq]参数不是thinkster.io';s教程,javascript,angularjs,yeoman,yeoman-generator-angular,Javascript,Angularjs,Yeoman,Yeoman Generator Angular,[更新] 这是我一个愚蠢的打字错误。谢谢你 这里有一个类似的问题,我的代码遵循建议的答案,所以请不要将此标记为重复 在我的本地主机中,我遇到以下错误:错误:[ng:areq]参数'postcrl'不是函数,未定义 app.js的内容: /* global app:true */ /* exported app */ 'use strict'; var app = angular .module('redjsApp', [ 'ngAnimate', 'ngCookies',

[更新] 这是我一个愚蠢的打字错误。谢谢你

这里有一个类似的问题,我的代码遵循建议的答案,所以请不要将此标记为重复

在我的本地主机中,我遇到以下错误:
错误:[ng:areq]参数'postcrl'不是函数,未定义

app.js的内容:

/* global app:true */
/* exported app */
'use strict';

var app = angular
  .module('redjsApp', [
    'ngAnimate',
    'ngCookies',
    'ngResource',
    'ngRoute',
    'ngSanitize',
    'ngTouch',
    'firebase'
  ])
  .constant('FIREBASE_URL', 'https://blazing-fire-6602.firebaseio.com/')
  .config(function ($routeProvider) {
    $routeProvider
      .when('/', {
        templateUrl: 'views/posts.html',
        controller: 'PostCtrl'
      })
      .when('/about', {
        templateUrl: 'views/about.html',
        controller: 'AboutCtrl'
      })
      .otherwise({
        redirectTo: '/'
      });
  });
脚本/services/post.js的内容:

'use strict';

app.factory('Post', function ($firebase, FIREBASE_URL) {
  var ref = new Firebase(FIREBASE_URL + 'posts');
  var posts = $firebase(ref.child('posts')).$asArray();
  console.log($firebase(ref.child('posts')).$asArray());

  var Post = {
    all: posts,
    create: function (post) {
      return posts.$add(post);
    },
    get: function (postId) {
      return $firebase(ref.child('posts').child(postId)).$asObject();
    },
    delete: function (post) {
      return posts.$remove(post);
    }
  };

  return Post;

});
scripts/posts.js的内容:

'use strict';

app.controller('PostsCtrl', function ($scope, Post) {
  $scope.posts = Post.all;

  $scope.post = {url: 'http://', 'title': ''};

  $scope.submitPost = function () {
    Post.create($scope.post).then(function () {
      $scope.post = {url: 'http://', 'title': ''};
    });
  };

  $scope.deletePost = function (post) {
    Post.delete(post);
  };

});
posts.html的内容包括:

<div ng-repeat="post in posts">
  <a ng-href="{{ post.url }}">{{ post.title }}</a>
  <a ng-click="deletePost(post)">delete</a>
</div>
</div>
<form ng-submit="submitPost()">
    <input type="text" ng-model="post.title" />
    <input type="text" ng-model="post.url" />
    <input type="submit" value="Add Post" />
</form>
Posts: {{ posts}} <br />
Post: {{post}}

删除
帖子:{{Posts}}
职位:{{Post}

只呈现html,不呈现任何关联的js。该应用程序是使用yeoman构建的。谢谢你的帮助

您的控制器名称有输入错误:

app.controller('PostsCtrl', ...
在途中,它是

controller: 'PostCtrl'

你能把你的参考链接到“不重复”上吗?这样人们就可以用它来表达想法了?这是一个打字错误,因此是一个结尾标记。PostsCtrl!=如果未将controller.js添加到主html
head
标记中的
script
标记列表中,则可能会发生PostCtrl