簡體   English   中英

我的Submitpost功能不起作用

[英]My Submitpost function isn't working

第一次使用angularJs,我正在關注AngularJS reddit克隆教程,但我不知道哪里出了問題。 當我單擊提交按鈕時,沒有任何反應。 https://github.com/Eibonic/AngularJS-reddit/tree/master/app

這是nav.js控制器

    'use strict';

app.controller('NavCtrl', function ($scope, $location, Post, Auth) 
{
$scope.post = {url: 'http://', title: ''};

$scope.submitPost = function () 
{
    Post.create($scope.post).then(function (ref) 
    {
        $scope.post = {url: 'http://', title: ''};
        $location.path('/posts/' + ref.name());
        });
        };

});

這是nav.html視圖文件。

   <nav class="navbar navbar-default" role="navigation">
   <!-- Brand and toggle get grouped for better mobile display -->
  <div class="navbar-header">
   <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
  <span class="sr-only">Toggle navigation</span>
  <span class="icon-bar"></span>
  <span class="icon-bar"></span>
  <span class="icon-bar"></span>
   </button>
    <a class="navbar-brand" href="#">ang-news</a>
    </div>

    <!-- Collect the nav links, forms, and other content for toggling -->
    <div ng-controller="NavCtrl" class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
    <form class="navbar-form navbar-left" role="search" ng-submit="submitPost()">
  <div class="form-group">
    <input type="text" class="form-control" placeholder="Title" ng-model="post.title">
  </div>
  <div class="form-group">
  <input type="text" class="form-control" placeholder="Link"      ng-model="post.url">
  </div>
  <button type="submit" class="btn btn-default">Submit</button>
</form>
 </div><!-- /.navbar-collapse -->
</nav>

我看了一下您鏈接的github項目,有兩個問題。 我通過運行項目並在Chrome中打開調試控制台找到了這兩個對象。

Unknown provider: AuthProvider <- Auth <- NavCtrl在英語中,這意味着您試圖將Auth提供程序(不存在)作為依賴項注入NavCtrl中。 這是在nav.js的第3行上。 您實際上尚未使用Auth服務,因此只需將其從函數聲明中刪除即可對其進行修復。 它看起來應該像這樣:

app.controller('NavCtrl', function ($scope, $location, Post)

一旦到達教程中創建Auth提供程序的位置,便可以在此處注入它。

第二個錯誤是GET http://localhost:9000/scrips/controllers/postview.js 404

這意味着HTML嘗試加載postview.js腳本,但找不到它。 事實證明,加載腳本時,第89行的index.html中有錯字。 它應該是http://localhost:9000/scripts/controllers/postview.js (在“腳本”中缺少“ t”)

進行了這兩項更改后,現在看起來工作正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM