Javascript 角度路由问题-路由未执行
我一直在学习斯科特·艾伦的一系列教程。我一直在努力模仿他到底做了些什么,但我相信我的角度路线并没有被执行 我有一个名为main.html的视图和一个名为index.html的shell/layout视图。在index.html中,body标记中有ng视图,脚本文件app.js中有一个路由,如下所示: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
(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经验稍丰富的人的回复,我已经尝试过了,但它没有纠正问题。