避免使用ng路由对无散列url进行路由
avoid routing of hash-less urls with ng-route
比方说,我正在浏览localhost/index.html#/view1
,并且我有一个指向localhost/index.html
的链接。当我点击它时,angular会通过它的ng路由模块对它进行处理,它会落入我的重定向子句中。
这是路由配置的摘录:
$routeProvider
.when( "/view1", route1 )
.otherwise({redirectTo:'/view1'}); // localhost/index.html clicks fall here
我可以使用ng点击,然后用location.href重定向javascript,但这不是一个理想的解决方案,因为我会丢失href链接(SEO、书签、选项卡)。
tl;dr
如何告诉angularJs ng route不要处理没有哈希的URL
编辑:我不使用html5模式,也不打算使用它。
如果您正在询问忽略url链接的角度路由服务。参见$location
文档
在以下情况下,链接不会被重写;相反浏览器将执行一个完整的页面重新加载到原始链接。
包含目标元素的链接
Example: <a href="/ext/link?a=b" target="_self">link</a>
到不同域的绝对链接
Example: <a href="http://angularjs.org/">link</a>
以"/"开头的链接,在定义基础时导致不同的基础路径
Example: <a href="/not-my-base/link">link</a>
相关文章:
- 如何使失败的路由解析承诺加载不同的模板URL
- 在angularjs中动态路由url路径
- API的快速路由-当您有子资源时的URL处理程序
- 直接使用 React Router + React + Flux 路由到 URL
- JavaScript:从具有使用 # 符号的路由的 URL 获取查询字符串
- Angular-使字符串对URL安全-路由是否正确
- UI路由器:直接使用url访问路由
- 如何在CanJS中更改路由url
- 根据路由URL设置select的值
- AngularJS路由:URL中不必要的参数
- 如何找出哪个 JS 文件正在重新路由 URL
- 节点 JS 路由 URL 冲突
- 在应用程序启动时生成路由 URL 列表,并插入到 MVC 中的 javascript 文件中
- Ember.js路由:url中的动态段错误
- 重新路由url | Nodejs | Express
- 如何在AngularJS的路由url中传递参数
- EMBER直接路由URL访问不加载数据
- 如何在角度应用程序中访问非路由 URL 参数
- AngularJS路由url删除这个&;#!&;
- 如何从AngularJS的路由/ url中移除标签