在本章中,我们将学习如何为应用程序设置路由。
安装react-router
的简单方法是在命令提示符窗口中运行以下代码:
f:\worksp\reactjs\reactapp>npm install react-router
在项目的根目录下创建.babelrc
文件,并在.babelrc
文件中添加以下代码 -
{
"presets": ["es2015", "react"]
}
创建一个文件:index.html
在根目录下,并使用以下的代码 -
<!doctype html>
<html lang = "en">
<head>
<meta charset = "utf-8">
<title>react router示例</title>
</head>
<body>
<div id = "app"></div>
<script type = "text/javascript" src = "bundle.js"></script>
</body>
</html>
要配置webpack.config.js
文件,请在webpack.config.js
中添加以下代码 -
module.exports = {
entry: './app/main.js',
output: {
filename: 'bundle.js'
},
module: {
loaders: [
{
loader: 'babel-loader',
test: /\.js$/,
exclude: /node_modules/
}
]
},
devserver: {
port: 8080
}
};
现在,我们将添加路线到应用程序。 创建一个名为app的目录,并创建文件并命名为main.js
和app.js
。
文件:main.js -
import react from 'react';
import { render } from 'react-dom';
import app from './app';
render(<app />, document.getelementbyid('app'));
文件:app.js -
import react, { component } from 'react';
import { browserrouter as router, switch, route, link } from 'react-router-dom';
import home from './home';
import login from './login';
class app extends component {
render() {
return (
<router>
<div>
<h2>welcome to react router tutorial</h2>
<ul>
<li><link to={'/'}>home</link></li>
<li><link to={'/login'}>login</link></li>
</ul>
<hr />
<switch>
<route exact path='/' component={home} />
<route exact path='/login' component={login} />
</switch>
</div>
</router>
);
}
}
export default app;
在这一步中,我们将在app目录中创建两个组件(home)和(login)。
文件:home.js -
import react, { component } from 'react';
class home extends component {
render() {
return (
<div>
<h2>home</h2>
</div>
);
}
}
export default home;
文件:login.js -
import react, { component } from 'react';
import reactdom from 'react-dom';
class login extends component {
render() {
return (
<div>
<h2>login</h2>
</div>
);
}
}
export default login;
当应用程序启动时,我们将看到两个可用于更改路由的链接。