Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度路由问题-路由未执行_Javascript_Angularjs_Angularjs Routing - Fatal编程技术网

Javascript 角度路由问题-路由未执行

Javascript 角度路由问题-路由未执行,javascript,angularjs,angularjs-routing,Javascript,Angularjs,Angularjs Routing,我一直在学习斯科特·艾伦的一系列教程。我一直在努力模仿他到底做了些什么,但我相信我的角度路线并没有被执行 我有一个名为main.html的视图和一个名为index.html的shell/layout视图。在index.html中,body标记中有ng视图,脚本文件app.js中有一个路由,如下所示: (function(){ var app = angular.module("githubViewer", ["ngRoute"]); app.config(function($rout

我一直在学习斯科特·艾伦的一系列教程。我一直在努力模仿他到底做了些什么,但我相信我的角度路线并没有被执行

我有一个名为main.html的视图和一个名为index.html的shell/layout视图。在index.html中,body标记中有ng视图,脚本文件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"
        })
        .otherwise({redirectTo:"/main"});
  });

}());
下面是index.html的脚本导入

 <script data-require="angular.js@*" data-semver="1.3.0-beta.5" src="https://code.angularjs.org/1.3.0-beta.5/angular.js"></script>
    <script src="https://code.angularjs.org/1.2.20/angular-route.js"></script>

我知道路由没有被命中的原因是main.html的代码没有被传递回页面

角度路线的使用方式是否发生了变化


这里还有一个指向我的plunk的链接:

您多次创建相同的角度模块。创建相同数量的角度模块失败。所以,创建一次角度模块,并在其他地方使用它,如下所示

var app = angular.module('FirstModule');  // app.js
app.controller // controller.js
app.factory  // service.js
app.directive  // directives.js
这是更新后的PRUNKR

我已将以下自执行函数更改为普通函数,因为它们创建闭包,并且在app.js中创建的模块在其他文件中不可用

(function(){

}());

否则,您可以将在app.js中创建的模块作为参数传递给其他文件中的所有自执行函数

您多次创建相同的角度模块。创建相同数量的角度模块失败。所以,创建一次角度模块,并在其他地方使用它,如下所示

var app = angular.module('FirstModule');  // app.js
app.controller // controller.js
app.factory  // service.js
app.directive  // directives.js
这是更新后的PRUNKR

我已将以下自执行函数更改为普通函数,因为它们创建闭包,并且在app.js中创建的模块在其他文件中不可用

(function(){

}());
否则,您可以将在app.js中创建的模块作为参数传递给其他文件中的所有自执行函数

修复了这个问题。您曾经再次调用
angular.module
,并将其用作setter,而不是getter

编辑: 我晚了一分钟=)你可以用Vikram Babu的答案,完全去掉包装盖。如果需要使用闭包,只需使用
var-app=angular.module(“githubViewer”)而不是
var-app=angular.module(“githubViewer”,[])以避免覆盖模块定义。

修复了此问题。您曾经再次调用
angular.module
,并将其用作setter,而不是getter

编辑:
我晚了一分钟=)你可以用Vikram Babu的答案,完全去掉包装盖。如果需要使用闭包,只需使用
var-app=angular.module(“githubViewer”)而不是
var-app=angular.module(“githubViewer”,[])以避免覆盖模块定义。

您正在使用angular 1.3 beta版和ng route 1.2版。不确定这是否是问题所在,但您应该使用相同的版本。根据angularjs经验稍丰富的人员的回复,我已经尝试过了,但它没有纠正问题。您正在使用angular 1.3 beta版和ng route 1.2版。不确定这是否是问题所在,但您应该使用相同的版本。根据angularjs经验稍丰富的人的回复,我已经尝试过了,但它没有纠正问题。