我有一个只使用带有控制器main.js的索引的应用程序。我希望内容由URL定义,所以我想在控制器中使用$ routeParams。我的问题是它变空了。
这是我的app.js
.config(function ($routeProvider) {
$routeProvider
.when('/:guid', {
templateUrl: '/index.html',
controller: 'MyCollectionUnitCtrl'
})
.otherwise({
redirectTo: '/'
});
});
控制器:
.controller('MyCollectionUnitCtrl',
function ($scope, $location, $routeParams) {
console.log($routeParams.guid); // Undefined
}
我加倍检查模块名称是否相同。
问题是控制器中的代码都没有运行。我通过在顶部添加console.log来测试它。索引甚至不是模板,因为我不使用偏序。 当我只使用一个视图时,我找不到任何关于路由的信息,所以这就是我遇到的问题。
当我只使用ng-controller定义控制器时,它不起作用。
想法?我错过了什么?这是一个愚蠢的问题,可以通过文档轻松解释吗?我感谢您给我的所有评论,答案和反馈。
谢谢!
修改 我还尝试在index.html中定义ng-controller,然后在routingConfig中只有控制器,但这也不起作用。
EDIT2 :Plunker
答案 0 :(得分:0)
很难找到代码片段的实际问题,但我认为你缺少ngRoute模块。
在html中添加angular-route.js脚本,并在模块中添加ngRoute依赖项。