小编qbo*_*olt的帖子

使用Spring Boot提供React App时出现React-Router问题

我目前需要使用Spring Boot来提供我的React应用程序.它适用于根URL - localhost:8080/但当然没有子路由被Spring Controller识别.

我不确定如何在没有硬编码的情况下将React Routing和Spring请求映射排成一行,以便映射到每个可能的路由index.html- 然后一些路由具有可变的子路由.


这是我的HomeController服务index.html

@Controller
public class HomeController {

    @RequestMapping(value = "/")
    public String index() {
        return "index.html";
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的React App中的路由渲染

const Root = ({ store }) => (
  <Provider store={store}>
    <Router history={browserHistory}>
      <Route path="/" component={App}>
        <IndexRedirect to="users"/>
        <Route path="/org" component={OrgSearch}>
          {<Route path="/org/:orgId" component={Org}/>}
        </Route>
        <Route path="/users" component={UserSearch}>
          {<Route path="/users/:userId" component={User} />}
        </Route>
      </Route>
    </Router>
  </Provider>
)
Run Code Online (Sandbox Code Playgroud)

任何帮助是极大的赞赏!


编辑:我尝试添加一些通配符功能,它呈现出一些奇怪的行为.这是更新的代码HomeController.

@Controller
public class HomeController {

    @RequestMapping(value = …
Run Code Online (Sandbox Code Playgroud)

spring reactjs spring-boot react-router

10
推荐指数
1
解决办法
6048
查看次数

未处理的承诺拒绝:Zone.js 检测到 ZoneAwarePromise `(window|global).Promise` 已被覆盖

我试图将 Angular2 快速入门代码合并到我当前的 webpack 构建中,似乎有些东西正在覆盖引发zone.js此错误的承诺。根据我见过的大多数 stackoverflow 帖子,该zone.js文件需要在任何可能包含承诺的文件之后加载。

我假设正在发生的事情是在 webpack 加载其余文件之前加载了<src>带有zone.js文件标签的 html node_module

有什么想法或建议吗?


这是package.json我正在使用的。

{
  "name": "site-pinger",
  "version": "1.0.0",
  "description": "",
  "scripts": {
    "build:watch": "webpack --colors --progress --watch",
    "build": "webpack --colors --progress",
    "start": "webpack-dev-server --progress --colors --hot --inline --port 3000"
  },
  "author": "",
  "license": "ISC",
  "standard": {
    "parser": "babel-eslint"
  },
  "babel": {
    "presets": [
      "latest",
      "stage-0"
    ]
  },
  "devDependencies": {
    "@types/jasmine": "2.5.36",
    "@types/node": "^6.0.46",
    "babel-core": "^6.17.0",
    "babel-eslint": "^7.0.0",
    "babel-loader": …
Run Code Online (Sandbox Code Playgroud)

javascript typescript webpack angular

7
推荐指数
3
解决办法
1万
查看次数