gpt4 book ai didi

reactjs - 没有节点的 React 路由

转载 作者:行者123 更新时间:2023-12-03 13:26:07 24 4
gpt4 key购买 nike

我正在使用react.js,但没有使用节点服务器。我需要一个路由解决方案,但似乎 react 路由器正在与节点一起使用。如果不是,请给我一些如何集成 react 路由器的例子。如果没有,我需要另一个与 React 一起使用的路由器。

最佳答案

这里是我如何基于 @semira 构建无构建的 React 应用程序。

./index.html 内部(或者在我的例子中是 ./index.php),我们加载 React 库、React 路由器和 Babel 转译器,它们将转换 ES6 javascript 以便浏览器可以解释它。请注意,您必须将脚本类型显式声明为 text/babel 才能让 Babel 转译器转换 ES6 javascript。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>React App Boilerplate</title>
<!-- Foundation 6.3.0 -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/foundation/6.3.0/css/foundation.min.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/foundation/6.3.0/js/foundation.min.js"></script>
</head>
<body>
<div id="app"></div>

<!------------------------------------------------------------------------------------------------------------------>
<!-- Dependencies -->
<!------------------------------------------------------------------------------------------------------------------>
<!-- Babel ES6 to ES5 Transpiler -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.21.1/babel.min.js"></script>

<!-- React Library -->
<script src="https://unpkg.com/react@15.4.1/dist/react.min.js"></script>
<script src="https://unpkg.com/react-dom@15.4.1/dist/react-dom.min.js"></script>
<!-- React Router -->
<script src="https://unpkg.com/react-router/umd/ReactRouter.min.js"></script>


<!------------------------------------------------------------------------------------------------------------------>
<!-- React Components -->
<!------------------------------------------------------------------------------------------------------------------>
<script type="text/babel" src="app/components/App.js"></script>
<script type="text/babel" src="app/components/About.js"></script>


<!-- Application entry point -->
<script type="text/babel" src="app/app.js"></script>
</body>
</html>

其中./app/components/About.js是一个用ES6编写的无状态React组件:

const About = () => <h2>About Page</h2>;

其中./app/components/App.js是用ES6编写的React组件:

class App extends React.Component {

render() {

return (

<div>
<h2>App Page</h2>
</div>

);

}

}

然后在 .app/app.js 内部,请注意我们如何通过将 ReactDOM 和 ReactRouter 存储为引用来使代码看起来像文档。

let render = ReactDOM.render;
let browserHistory = ReactRouter.browserHistory;
let Router = ReactRouter.Router;
let Route = ReactRouter.Route;
let IndexRoute = ReactRouter.IndexRoute;
let Link = ReactRouter.Link;

render((

<Router history={browserHistory}>
<Route path="/" component={App}>
<Route path="about" component={About} />
</Route>
</Router>

), document.getElementById('app'))

关于reactjs - 没有节点的 React 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35743316/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com