Angular 2 绝对 URL 错误

Angular 2 Absolute URL Error

我想让 Rails 服务器加载 Angular 2 个应用程序,这样我就不必 运行 2 个服务器。

作为 Angular 2 的起点,我使用了以下示例:https://github.com/angular-class/angular2-webpack-starter

如果我有 Rails 服务器 运行ning,并提供索引页面,Angular 2 应用程序会按预期加载。有几个链接 Home、Dashboard 和 Todo。单击时它们都会起作用。

如果我直接调用 http://localhost:3000:/todo,则会出现路由错误。因此,为了解决这个问题,我的 rails 路由器中有以下内容:

get ':todo', controller: :home, action: :index

这将加载应用程序,但不会将我带到 'todo' 组件。

现在,如果我 运行 带有 webpack-dev-server 的 Angular 2 应用程序(按照存储库的说明),这个问题就不存在了。

似乎 webpack-dev-server 能够将所有请求重定向到 / 以允许 Angular 2 的路由接管并将用户定向到正确组件的方式。

如有任何帮助,我们将不胜感激。

事实证明,当我使用相同的代码对两台服务器进行测试时,我为每台服务器创建了一个单独的索引文件。

Rails 服务器索引文件缺少以下行:

<base href="/">

添加后问题解决