Angularjs 角度-不同的路线、相同的模板/控制器、不同的加载方法
我想使用路由,但我总是想使用相同的模板和控制器。我有这样的路线:Angularjs 角度-不同的路线、相同的模板/控制器、不同的加载方法,angularjs,routing,angularjs-routing,Angularjs,Routing,Angularjs Routing,我想使用路由,但我总是想使用相同的模板和控制器。我有这样的路线: **a/:albumid** 及 在第一种情况下,我想加载一个图像数组并将它们添加到列表中。在第二种情况下,我想加载一个图像并将其添加到列表中 因此,区别仅在于数据加载。最有效的方法是什么 也可以为ng show设置动画吗?类似于jQuery的slideDown?看看这篇文章,它描述了一种完全满足您需求的方法: 我用过这个技术,效果很好 简言之,对于布线,类似以下内容: $routeProvider .when("/a
**a/:albumid**
及
在第一种情况下,我想加载一个图像数组并将它们添加到列表中。在第二种情况下,我想加载一个图像并将其添加到列表中
因此,区别仅在于数据加载。最有效的方法是什么
也可以为ng show设置动画吗?类似于jQuery的slideDown?看看这篇文章,它描述了一种完全满足您需求的方法: 我用过这个技术,效果很好 简言之,对于布线,类似以下内容:
$routeProvider
.when("/a/:album_id", {
action: "album.list"
}).when("/i/:imgid", {
action: "images.load"
})
然后在控制器中,您可以访问$route.current.action
并执行相应的操作。诀窍是在控制器中创建一个完成所有工作的函数(本文称之为render()
),然后在触发$routeChangeSuccess时调用该函数:
$scope.$on(
"$routeChangeSuccess",
function( $currentRoute, $previousRoute ){
// Update the rendering.
render();
}
);
我创建了一个超级简单的指令来处理这个问题,它允许路由更像Rails或Codeigniter路由,其中控制器方法在路由定义中。方法名称在routeProvider中设置。当在路由模板中设置选项和指令时。
请参阅:谢谢!你救了我一天!
$scope.$on(
"$routeChangeSuccess",
function( $currentRoute, $previousRoute ){
// Update the rendering.
render();
}
);