我最近开始在 ng-click
函数中使用 $location.path()
,而不是简单地引用 href
中的路径a
标签。
我这样做的原因:
- 优先考虑所有逻辑,包括导航到移出我的 View 的路径(这可能有点极端)。
- 对于多个 html 模板引用同一 Controller 的罕见情况,我可以更改
$location.path()
一次,而不必记住更新每个模板中相应的 href。
所以代替:
<a class="button button-balanced" href="/signup">Sign up</a>
我有:
<button class="button button-balanced" ng-click="goToSignup()">Sign up</button>
在我的 Controller 中:
$scope.goToSignup = function() {
$location.path('/signup');
}
我的问题是,以这种方式设置我的 Angular 应用程序有缺点吗? (注意:我主要构建 Ionic 混合移动应用程序)
最佳答案
- 优先考虑所有逻辑,包括导航到移出我的 View 的路径(这可能有点极端)。
您可以使用相同链接按钮来处理所有逻辑和路径
<a href="/signup" class="button button-balanced" ng-click="SignUpFunc()>Sign Up</a>
a标签是先执行click函数,然后执行href调用。所以你可以通过链接按钮来完成。
- 对于多个 html 模板引用同一 Controller 的罕见情况,我可以更改
$location.path()
一次,而不必记住更新每个模板中相应的 href。
如果您使用菜单选项,则可以使用链接按钮
但如果您将一个 Controller 导航到另一个 Controller ,那么您应该使用
$location.path('/signup');
关于javascript - Angular : Using $location. path() 而不是 href,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29604937/