问题标签 [route-provider]

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 投票
1 回答
2253 浏览

angularjs - 可以禁用 $locationProvider 和 $routeProvider 吗?

我可以禁用这些家伙吗?我在 asp.net mvc 应用程序中使用 angular.js,我不需要 angular 来控制与地址栏或链接相关的任何内容......

现在在 html5 模式下禁用 ( $locationProvider.html5Mode(false)) 它会将哈希和操作方法的名称添加到地址栏,例如:您转到\Home\index,它会导航,然后地址栏文本变为Home\index#\index. 这不是很烦人吗?

如果我启用 html5 模式,它将完全停止加载页面(初始页面除外)。我尝试从最初加载的页面转到另一个页面 - 它更改了地址栏的文本(这次不添加主题标签),但不会加载页面本身。那不是令人沮丧吗?

0 投票
2 回答
3254 浏览

angularjs - Angular JS深度链接$ routeProvider重新加载不起作用

我有以下路由配置:

一切正常,除了当我打开/admin/settings并重新加载页面时,它重定向到404. 我尝试删除 html5Mode,它可以工作。但是,我真的很想使用 html5Mode。我错过了什么?请帮我。

哦,顺便说一句,我使用的是 AngularJS 1.1.5。

0 投票
1 回答
9099 浏览

javascript - AngularJS:解析 $http 时的 $routeProvider 返回响应 obj 而不是我的 obj

我正在尝试解决几个 ajax 调用,以便我的控制器需要的数据在它(以及它提供的指令)执行之前可用。执行顺序是有效的,但是,不是返回我创建的对象,而是注入到我的控制器中的结果是 $http 的响应对象:

我的代码基本上看起来像:

我傻吗?$http 成功的返回值不应该是 $http 返回的值吗?

我也试过

但是data注入到我的控制器中的对象是未定义的(我猜是因为 $http 是异步的并且resolve没有被 $http 阻塞,所以它在 $http 准备好之前返回)。

PS $http 的同步性应该在其选项对象中定义!

解决方案

感谢Ajay beniwal 的指针Mark Rajcok 的指针

PSthen()记录在$q的页面上

0 投票
1 回答
2987 浏览

ajax - $routeProvider: 带有 X-Requested-With 标头的 templateUrl 请求

jQuery.ajax()通常发送一个X-Requested-With带有XMLHttpRequest设置为内容的标头。在服务器上(在 PHP 中),我通常通过测试来检测:

$is_ajax = $_SERVER['HTTP_X_REQUESTED_WITH'] === 'XMLHttpRequest'

AngularJS中,常见于 中$routeProvider.when(),您可以使用templateUrl: '/path/on/server'.

我的问题是请求templateUrl似乎没有设置X-Requested-With标头,因此无法将templateUrl请求与任何其他类型的请求区分开来。

有什么办法可以$routeProvider发送X-Requested-WithXMLHttpRequest

参考:

  • $routeProvider 文档- (搜索templateUrl

  • jQuery jqXHR - 见jqXHR.setRequestHeader("X-Requested-With", "XMLHttpRequest")

  • v1.1.5通过Google CDN使用 Angular

  • 更新:我找到了Angular开发人员X-Requested-With$http.get. 想知道他们为什么要这样做?

  • 更新: https ://github.com/angular/angular.js/issues/1004 - 讨论删除标头的位置。

0 投票
2 回答
377 浏览

angularjs - AngularJS 中的分布式路由定义

我一般知道 AngularJS 中的路由定义如下:

让我烦恼的是,我想使用 RequireJS 模块化我的应用程序,并且我想在需要的地方注册路由。例如,如果我有一个配置文件模块,我想从那里注册我的路线。同样适用于触点模块。这种集中化让我发疯。我是否在这里遗漏了一点,或者我的问题有什么好的解决方案?

0 投票
1 回答
444 浏览

angularjs - 使用没有历史和 url 更改的角度 $routeProvider

我想使用 $routeProvider 从服务器加载部分,但我不希望 url # 值更改和历史记录更改(在我的应用程序内多次路由更改后,应用程序应该返回到以前的 url 而无需多次后退按钮单击)

0 投票
1 回答
143 浏览

angularjs - $routeProvider:未定义的 ID 数量

在我的 angularjs 应用程序中,我的路径是这样构建的:

当用户单击子菜单项时,该项的索引将添加到路径中。未指定菜单的深度。

因此,如果用户单击所有菜单,则路径可能如下所示:

.../#/settings/0/2/0/3/2

如何设置 $routeProvider 以使 ID 的数量无关紧要?

0 投票
2 回答
2351 浏览

symfony - Symfony2 使用带有 Angular HTML5 路由的资产

我在 Symfony 中使用有角度的前端。当我声明我的时$routeProvider,我必须包括我的/app_dev.php/因为我将 html 5 模式设置为 true: $locationProvider.html5Mode(true);

对比

问题是当我想使用生产环境时,我必须记住将这些路由改回来。

assetic当我进行转储以检测我正在为devvs进行转储时,我有一个很好的方法来处理这个问题,prod还是我只需要痛苦地记住更改目标环境的路径?

谢谢

0 投票
1 回答
2248 浏览

angularjs - Angular routeProvider Resolve 未调用

我在路由提供程序中设置了一个简单的解析功能。就像是

该工厂在这样的模块中声明的位置:

发生的事情是在直接刷新或第一次加载时,此解决方法被命中。但是,如果我有 $location.url('/mypage'); 从一条路线更改为这条路线,角度不会重新解析此控制器。

我可能没有考虑以正确的方式解决问题,如果是这样,我会就“角度”的方式提出建议来做到这一点。我希望在视图之前加载所有这些信息,并且会根据路由参数而变化。

0 投票
1 回答
483 浏览

rest - RESTful 路由角度路由提供程序

我想做这样的事情:

不幸的是,角度似乎认为“新”是一个 :playlistId

关于如何实现这一点的任何建议?