首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在分配路由之前更改Ember.js路由器中的URL?

如何在分配路由之前更改Ember.js路由器中的URL?
EN

Stack Overflow用户
提问于 2014-03-21 02:50:33
回答 2查看 293关注 0票数 0

我的Ember.js应用程序需要向后兼容指向特定文件扩展名的链接。(例如,.pdf)换句话说,我有一个类似这样的示例链接,以返回PDF:

http://www.example.com/docs/my.pdf

我尝试在Ember.js路由器为其分配路由之前对URL进行预处理,以删除.pdf,方法是获取一个子字符串,然后将其分配回要处理的URL:

http://www.example.com/docs/my

显然,获取子字符串很简单,但我不知道如何将更新后的URL重新注入Ember.js路由器。

EN

回答 2

Stack Overflow用户

发布于 2014-03-21 03:41:32

您的方法从一开始就是非ember兼容的。解决方案不是更新URL,而是首先简单地使用您想要的URL。

而不是将用户发送到

代码语言:javascript
复制
http://www.example.com/docs/my.pdf

将它们发送到

代码语言:javascript
复制
http://www.example.com/docs/my

然后在一个相关的路由钩子中(我更喜欢beforeModel钩子),将my.pdf文件发送给用户。

票数 0
EN

Stack Overflow用户

发布于 2014-03-21 03:59:56

你可以直接使用transitionTo()

或者,this answer建议使用

代码语言:javascript
复制
Ember.HistoryLocation.replaceState(<string>);

代码语言:javascript
复制
router.replaceWith('index');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22542459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档