我正在尝试在angular 6应用程序中创建URL别名。问题如下:
我在角度应用程序中有一个URL,定义为article/:id
,该URL映射到名为ArticleViewComponent
的组件,但是,问题是我试图制作一个不同的URL,以便在其中发送标题的文章作为文章的路径。例如,如果我有一篇名为Article about angular
且ID为1
的文章,我希望该URL为/article/article-about-angular
并仍将其映射到ID为1
的文章中(因为id是API处理的内容,而不是标题)。在此先感谢您的帮助,我知道这似乎是不可能的。
答案 0 :(得分:0)
您可以使用article/:id
将它们都映射到相同的组件,就像已经使用的一样。现在,它不仅包含数字 ID,还包含文章标题或数字ID。然后,在提取文章时,只需根据id是数字还是字符串来进行不同处理即可:
// Check if id is "not a number"
if(isNaN(id)) {
// Define a function to convert from titles to id numbers
var idNumber = getIdNumberFromTitle(id);
getArticleFromTitleName(idNumber);
} else {
getArticleFromIdNumber(id);
}