2017-04-03 65 views
-1

我想要建立一個使用路由angularJs類的routeParams的鏈接。這工作得很好,但由於某種原因,它不插入我的字符串。

我曾嘗試以下:

  1. {{用戶名}}如在控制器I設置$ scope.username = $ routeParams.username;
  2. 作爲控制器的{{Repo.username}}被稱爲RepoController。然而既

沒有結果,除了在打印作爲字符串對screen.my代碼文本是如下

App.js

(function() { 

    var app = angular.module("githubViewer", ["ngRoute"]) 

    app.config(function($routeProvider) { 
     $routeProvider 
     .when("/main", { 
      templateUrl: "main.html", 
      controller: "MainController" 
     }) 
     .when("/user/:username", { 
      templateUrl: "user.html", 
      controller: "UserController" 
     }) 
     .when("/repo/:username/:reponame", { 
      templateUrl: "repo.html", 
      controller: "RepoController" 
     }) 
     .otherwise({ 
      redirectTo: "/main" 
     }) 
    }); 

}()); 

RepoController.js

(function() { 

    var app = angular.module("githubViewer") 

    var RepoController = function($scope, github, $routeParams) { 

    $scope.username = $routeParams.username; 
    $scope.reponame = $routeParams.reponame; 


    app.controller("RepoController", ["$scope", "github", "$routeParams", RepoController]); 

}()); 

Repo.html

<section> 

    {{ username }} 
    <br /> 
    {{ repo.name }} 

</section> 

有可用的plunker: https://plnkr.co/edit/oGJJOUfCqW8G7OAXxXGa?p=preview

非常感謝任何幫助。乾杯!

+0

你語法錯誤,控制器功能不關閉'}' –

回答

2

Plunkr中有一些語法和語義問題可能會影響您的實際代碼。

  1. 您在RepoController.js有語法錯誤 - 你不}
  2. 您還沒有包括在<script src=RepoController.js>index.html
  3. $scope.repo關閉RepoController函數聲明不具有名稱屬性的對象。在您的模板,使用reponame代替,或者你可以做$scope.repo = {name: $routeParams.reponame}
+0

感謝您的迅速反應。它確定了這3點後,它工作。但是前兩名對我來說有些sl sl。反正乾杯! –