问题标签 [angularjs-routing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
13 回答
157059 浏览

javascript - Delaying AngularJS route change until model loaded to prevent flicker

I am wondering if there is a way (similar to Gmail) for AngularJS to delay showing a new route until after each model and its data has been fetched using its respective services.

For example, if there were a ProjectsController that listed all Projects and project_index.html which was the template that showed these Projects, Project.query() would be fetched completely before showing the new page.

Until then, the old page would still continue to show (for example, if I were browsing another page and then decided to see this Project index).

0 投票
1 回答
20749 浏览

angularjs - AngularJS 中 $routeChangeSuccess 的对面

我只是想知道是否有办法知道是否有人正在更改 URL 的路由。

例如,我的 html 中有这样的内容:

正在使用这个:

但是,我刚刚意识到我需要在更改 URL 之前运行此代码。有没有办法做到这一点,也有同样的方法next,并current知道我将被重定向到哪里以及从哪里?

0 投票
8 回答
361661 浏览

angularjs - 如何/何时使用 ng-click 调用路由?

假设您正在使用路线:

在您的 html 中,您希望在单击按钮时导航到 about 页面。一种方法是

...但似乎 ng-click 在这里也很有用。

  1. 这个假设正确吗?使用 ng-click 代替锚点?
  2. 如果是这样,那将如何运作?IE:

<div ng-click="/about">

0 投票
3 回答
4451 浏览

angularjs - AngularJS: How to hide the template content until user is authenticated?

My app has 2 pages: main.html and login.html. When not authenticated users go to /main they should be redirected to /login.

The problem is that main.html is rendered first, and after a second or so, when user authentication fails, login.html is rendered.

How could I prevent from main.html to be rendered until authentication succeeds?

Here is the relevant code (CoffeeScript):


0 投票
2 回答
1186 浏览

angularjs - 从 angularjs 路由向服务器发送查询参数

我将 AngularJS 用于我的客户端框架。使用 routeprovider,我想将查询参数发送到我的 templateURL 进行处理。基本上我的 templateURL 是一个服务器端 php 脚本,它将生成 HTML。

现在 routeprovider 不会向我的服务器端代码发送查询参数。我得到所有这些参数的空白值。

如果我的方法是错误的,请纠正我。

0 投票
4 回答
12540 浏览

javascript - 根据路由切换 ng-include 的可见性

我有以下配置:

在我的根 index.html 的某个地方有一个:

现在,我希望同时在 DOM 中加载和生成两个视图,并根据路由/URL 显示其中一个。

类似于以下内容(不是实际的工作代码,只是为了给您一个想法)。

应用程序.js:

根索引.html:

更新:我知道 ng-view 可以做到这一点,但存在细微差别。我希望每个视图的 html 生成一次并始终保留在 DOM 中。

0 投票
5 回答
76477 浏览

angularjs - 如何在角度路线中传递查询字符串?

我正在使用 AngularJS 路由,并试图了解如何使用查询字符串(例如, url.com?key=value)。Angular 不理解包含同名键值对的路由albums

0 投票
8 回答
108307 浏览

angularjs - angularjs获取先前的路由路径

在我的模块配置中

控制器

正如您在我的控制器中看到的那样,我已经硬编码了后退按钮 url 和文本(实际上我不需要文本作为使用图像)。通过这种方式,我发现在某些情况下后退按钮导航不正确。我不能使用history.back()我的后退按钮更改为主页视图中的菜单链接。

所以我的问题是如何在控制器中获取先前的路由路径,或者是更好的方法来实现这一点?

我创建了一个Plunker演示我的问题。请检查一下。

0 投票
1 回答
11201 浏览

redirect - 用户登录后重定向

我对 Angular 还是很陌生,现在我只是想设置我所有的路线并按照我的意愿工作。

设置: 当用户导航到某些页面(/settings在本例中)时,应用程序应检查是否有用户已登录。如果有,则照常继续。否则,用户应该转到登录页面 ( /login)。

我想要什么: 用户成功登录后,他们应该转到他们最初尝试访问的页面(/settings

我的问题: 是否有一种“角度方式”来记住用户试图去哪里?

相关代码:

应用程序.js

登录.js

非常感谢 John Lindquist的视频让我走到了这一步。

0 投票
1 回答
435 浏览

javascript - $location 在第一次 ng-click 回调时不导航

我的 AngularJS 应用程序中发生了一些奇怪的事情。我有一个视图,其中有一个绑定到对象数组的锚标记列表(我ng-repeat用来呈现列表)。每个锚标记都ng-click绑定到控制器上的方法。方法如下:

urlvar 每次都被初始化为正确的值。但是,当我第一次单击锚标记时,$location.path(url)什么也不做,当我第二次单击它时,它确实导航到目标 URL。

更新:

好的,我通过使用以下$http服务使其正常工作:

$,ajax如果我使用or真的有什么不同$http吗?我以为这两者可以互换使用...?