Angular 2绝对网址错误

时间:2015-07-04 22:36:28

标签: ruby-on-rails ruby-on-rails-4 routing angular webpack-dev-server

我想让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

这会加载应用,但不会将我带到&#t; todo'零件。

现在,如果我使用webpack-dev-server运行Angular 2应用程序(根据repo的说明),这个问题并不存在。

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

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

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

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

<base href="/">

添加后问题解决了。