AWS Cognito React 项目教程
aws-cognito-reactAWS Cognito React boilerplate / reference implementation项目地址:https://gitcode.com/gh_mirrors/aw/aws-cognito-react
1. 项目的目录结构及介绍
aws-cognito-react/
├── .github/
│ └── workflows/
├── app/
│ ├── cdk/
│ │ └── ...
│ ├── src/
│ │ ├── components/
│ │ ├── contexts/
│ │ ├── hooks/
│ │ ├── pages/
│ │ ├── App.tsx
│ │ ├── index.tsx
│ │ └── ...
│ ├── public/
│ │ └── ...
│ ├── .gitignore
│ ├── LICENSE
│ ├── README.md
│ ├── package.json
│ └── tsconfig.json
├── .gitignore
├── LICENSE
├── README.md
└── package.json
- .github/workflows: 包含GitHub Actions的工作流配置文件。
- app/cdk: 包含AWS CDK的配置和部署脚本。
- app/src: 包含React应用的源代码。
- components: 包含React组件。
- contexts: 包含React Context API的实现。
- hooks: 包含自定义React Hooks。
- pages: 包含应用的页面组件。
- App.tsx: 应用的主组件。
- index.tsx: 应用的入口文件。
- app/public: 包含公共资源文件。
- .gitignore: Git忽略文件配置。
- LICENSE: 项目许可证。
- README.md: 项目说明文档。
- package.json: 项目依赖和脚本配置。
- tsconfig.json: TypeScript配置文件。
2. 项目的启动文件介绍
- app/src/index.tsx: 这是React应用的入口文件,负责渲染应用到DOM中。
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById('root')
);
- app/src/App.tsx: 这是应用的主组件,负责应用的路由和全局状态管理。
import React from 'react';
import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import { AuthProvider } from './contexts/AuthContext';
import HomePage from './pages/HomePage';
import LoginPage from './pages/LoginPage';
import SignupPage from './pages/SignupPage';
function App() {
return (
<Router>
<AuthProvider>
<Switch>
<Route exact path="/" component={HomePage} />
<Route path="/login" component={LoginPage} />
<Route path="/signup" component={SignupPage} />
</Switch>
</AuthProvider>
</Router>
);
}
export default App;
3. 项目的配置文件介绍
- app/package.json: 包含项目的依赖、脚本和其他配置。
{
"name": "aws-cognito-react",
"version": "2.0.0",
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"dependencies": {
"react": "^17.0.2",
"react-dom": "^17.0.2",
"react-router-dom": "^5.2.0",
"aws-amplify": "^4.0.0"
},
"devDependencies": {
"@types/react": "^17.0.0",
"@types/react-dom": "^17.0.0",
"typescript": "^4.1.2"
}
}
- app/tsconfig.json: TypeScript编译配置文件。
{
"compilerOptions": {
"target": "es5",
"lib": ["dom", "es2015"],
"jsx": "react",
aws-cognito-reactAWS Cognito React boilerplate / reference implementation项目地址:https://gitcode.com/gh_mirrors/aw/aws-cognito-react