如何在 UI-Router 中使用和映射别名字符串而不是 id
How to use and map alias string instead of id in UI-Router
通常我使用 ui-router
状态和 id
参数,如下所示:
/* route /news/{news_id} */
http://servername/#/news/14
但我已经想像这样使用 alias string
而不是 id
:
/* route /news/{news_title} */
http://servername/#/news/braking-news-of-usa
如何在 angular 或 ui-路由器中将 news_title
映射到 news_id
?
我不认为这特定于 Angular,但您可以考虑以下方法。
与标题一起附加带有一些分隔符的新闻 ID。例如breaking_news_of_usa_14。当有人点击 link 时,在 Javascript 中拆分新闻标题并检索 ID 以查询服务器 API。
确保您拥有唯一的新闻标题(服务器端的开销 API 例如唯一索引、哈希等),而不是使用新闻 ID 进行查询,而是使用新闻标题进行查询以获取详情。
像这样维护新闻 ID 和新闻标题 /{news_title/{news_id}。这样您就可以节省引入独特标题的开销。 (参考,检查 Whosebug URL 格式的问题详情。)
通常我使用 ui-router
状态和 id
参数,如下所示:
/* route /news/{news_id} */
http://servername/#/news/14
但我已经想像这样使用 alias string
而不是 id
:
/* route /news/{news_title} */
http://servername/#/news/braking-news-of-usa
如何在 angular 或 ui-路由器中将 news_title
映射到 news_id
?
我不认为这特定于 Angular,但您可以考虑以下方法。
与标题一起附加带有一些分隔符的新闻 ID。例如breaking_news_of_usa_14。当有人点击 link 时,在 Javascript 中拆分新闻标题并检索 ID 以查询服务器 API。
确保您拥有唯一的新闻标题(服务器端的开销 API 例如唯一索引、哈希等),而不是使用新闻 ID 进行查询,而是使用新闻标题进行查询以获取详情。
像这样维护新闻 ID 和新闻标题 /{news_title/{news_id}。这样您就可以节省引入独特标题的开销。 (参考,检查 Whosebug URL 格式的问题详情。)