2017-04-03 72 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。反正干杯! –