我使用 Angular 2 RC 1 构建了一个应用程序。它将部署的各种环境具有不同的 URL 基本路径(本地它是 localhost:12345/,在开发服务器上它可能是 192.168.1.1/myapp,在 QA 上可能是 192.168.2.2/testapp 等)。我想使用标签来处理这些差异,告诉 Angular 在本地根文件夹中查找、在 myapp 文件夹中查找 dev、在 testapp 文件夹中查找 QA 等等。
然而,Angular 似乎完全忽略了基本标签。我设置成功,当我查看应用程序的页面源时,我看到了预期的结果。不过,Angular 始终在根文件夹中查找文件,即使设置了基本 href 也是如此。
我的标签如下所示:
<head>
<base href="/myapp">
etc...
这是头部内的第一个标签。我的期望是 Angular 应该在 localhost:12345/myapp 中查找文件。然而它只使用 localhost:12345/。是我对这个标签的理解有误,还是我有错误?
(顺便说一句,我很确定当 Angular 引导时我无法设置基本 url,因为我需要从 .NET web.config 文件中提取它。我通过 ViewBag 和可以确认它正在正确填充。)
最佳答案
啊哈,显然它需要
<base href="/myapp/">
两边都有斜杠!
关于Angular 2 Base Href 未应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38707681/