我想让 Rails 服务器加载一个 Angular 2 应用程序,所以我不必运行 2 个服务器。
作为 Angular 2 的起点,我使用了以下示例:https ://github.com/angular-class/angular2-webpack-starter
如果我运行 Rails 服务器并提供索引页面,Angular 2 应用程序将按预期加载。有几个链接 Home、Dashboard 和 Todo。单击时它们都起作用。
如果我直接打电话http://localhost:3000:/todo
,我会收到路由错误。因此,为了解决这个问题,我的 rails 路由器中有以下内容:
get ':todo', controller: :home, action: :index
这将加载应用程序,但不会将我带到“待办事项”组件。
现在,如果我使用 webpack-dev-server 运行 Angular 2 应用程序(根据 repo 的说明),则不存在此问题。
看起来好像 webpack-dev-server 能够将所有请求重定向到 / 以允许 Angular 2 的路由接管并将用户引导到正确的组件。
任何帮助表示赞赏。