Angularjs在ng-href中起作用

use*_*604 21 javascript model-view-controller angularjs angularjs-ng-href

我想调用ng-href中的函数并从函数返回链接.

当我单击该函数时,它将页面发送到url中的该函数.喜欢:

本地主机/ pageLink()

<a ng-href="pagelink()" >Link</a>
Run Code Online (Sandbox Code Playgroud)

我该如何运行该功能并返回正确的链接?

nae*_*th7 44

插值可能会成功:

<a ng-href="{{pagelink()}}">Link</a>
Run Code Online (Sandbox Code Playgroud)

编辑:

对于任何抱怨的人,这将在启动时执行代码:这正是它必须做的!它会监视pagelink更改方法并更新href属性.

最初的问题是:

我该如何运行该功能并返回正确的链接?

pagelink()不应该处理路由,而是返回指向目标路由的字符串.请参阅ngHref文档.

如果你想自己处理路由,你应该使用ngClick,而不是ngHref.

  • 所有这一切都是在页面加载时在控制器中调用`pagelink()`.使用没有插值的`ng-click`应该可以解决问题. (2认同)
  • @ScottKoland使用ng-click的问题是您失去了像target =“ _ blank”这样的&lt;a&gt;的能力。在新标签页中打开网页是javascript的问题。 (2认同)

Sco*_*and 7

假设pagelink()$rootScope,你会使用ng-click:

<a href="" ng-click="pagelink()">Link</a>
Run Code Online (Sandbox Code Playgroud)

你需要href=""这样,浏览器将鼠标悬停在光标上.

  • 无法在新标签页中打开网页 (2认同)