javascript - Angular : Using $location. path() 而不是 href

标签 javascript html angularjs ionic-framework

我最近开始在 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/

相关文章:

javascript - Mongoose.js 从不通过 Set 保存字段

html - 使用 No-IP ddns 和 linux apache 时照片不显示

javascript - ng-if 中的 html 元素在页面加载时出现

angularjs - 关键依赖项 - 依赖项的请求是一个 Webpack 表达式

javascript - Onsubmit 事件拒绝触发

javascript - Angularjs 使用 Promise 在另一个之后加载资源

javascript - 重构 Javascript 代码 - 需要重构

html - 突出显示菜单选项

html - 与 ID Div 一起使用时链接带有下划线(尝试删除下划线)

javascript - 如何使用 angularjs 设计具有阶段和可扩展输入的动态进度条?