当前位置:首页 > React

flask如何运行react

2026-01-15 11:10:14React

运行 Flask 与 React 的集成方法

将 Flask 作为后端 API 服务器,React 作为前端框架,可以通过以下方式实现两者的协同运行。

方法一:分离开发模式(开发阶段)

在开发阶段,Flask 和 React 可以分别运行在不同的端口上。React 通过 create-react-app 或其他工具启动开发服务器,Flask 则运行 API 服务。

  1. 配置 Flask 后端

    • 创建 Flask 应用并启用 CORS(跨域资源共享),以便 React 前端可以访问 API。

    • 示例 Flask 代码:

      from flask import Flask, jsonify
      from flask_cors import CORS
      
      app = Flask(__name__)
      CORS(app)
      
      @app.route('/api/data')
      def get_data():
          return jsonify({"message": "Hello from Flask!"})
      
      if __name__ == '__main__':
          app.run(debug=True, port=5000)
  2. 配置 React 前端

    • 使用 create-react-app 创建 React 项目。

    • 在 React 组件中调用 Flask API:

      import React, { useEffect, useState } from 'react';
      
      function App() {
        const [data, setData] = useState(null);
      
        useEffect(() => {
          fetch('http://localhost:5000/api/data')
            .then(response => response.json())
            .then(data => setData(data));
        }, []);
      
        return (
          <div>
            {data ? <p>{data.message}</p> : <p>Loading...</p>}
          </div>
        );
      }
      
      export default App;
  3. 运行项目

    • 启动 Flask 后端:python app.py(假设 Flask 文件名为 app.py)。
    • 启动 React 前端:npm start(在 React 项目目录中)。

方法二:集成生产模式(部署阶段)

在生产环境中,可以将 React 构建的静态文件托管在 Flask 中,以减少跨域问题并简化部署。

  1. 构建 React 项目

    • 在 React 项目目录中运行 npm run build,生成静态文件(位于 build 文件夹)。
  2. 配置 Flask 托管静态文件

    • 修改 Flask 应用以提供 React 的静态文件:

      from flask import Flask, send_from_directory
      
      app = Flask(__name__, static_folder='../react-app/build')
      
      @app.route('/')
      def serve():
          return send_from_directory(app.static_folder, 'index.html')
      
      @app.route('/static/<path:path>')
      def serve_static(path):
          return send_from_directory(app.static_folder, path)
      
      @app.route('/api/data')
      def get_data():
          return jsonify({"message": "Hello from Flask!"})
      
      if __name__ == '__main__':
          app.run()
  3. 文件结构

    • 确保 React 的 build 文件夹与 Flask 项目在同一目录层级:
      project/
      ├── flask-app/
      │   ├── app.py
      └── react-app/
          ├── build/
  4. 运行 Flask

    • 启动 Flask 应用后,访问 http://localhost:5000 即可看到 React 前端与 Flask 后端集成运行。

注意事项

flask如何运行react

  • 开发阶段建议使用分离模式,便于前后端独立调试。
  • 生产阶段建议使用集成模式,减少跨域问题并简化部署流程。
  • 确保 React 的路由(如 react-router)与 Flask 的路由兼容,避免页面刷新时出现 404 错误。

标签: flaskreact
分享给朋友:

相关文章

如何手写一个react

如何手写一个react

手写一个简单的 React 创建一个基础的 React 实现需要理解其核心概念:虚拟 DOM、组件、状态管理和渲染。以下是一个简化版的 React 实现。 创建虚拟 DOM 虚拟 DOM 是真实 D…

react 如何分页

react 如何分页

分页实现方法 在React中实现分页功能可以通过多种方式完成,具体取决于数据来源(如API或本地数据)和UI库的选择。以下是常见的实现方法: 使用本地数据分页 对于存储在组件状态或Context中…

react 如何运行

react 如何运行

运行 React 项目的步骤 安装 Node.js 确保系统已安装 Node.js(建议版本 16+),可通过官网下载并安装。安装后验证版本: node -v npm -v 创建 React 项目…

react 如何跳转

react 如何跳转

使用 React Router 进行页面跳转 React 应用中通常使用 react-router-dom 库实现页面跳转。以下是几种常见的跳转方式: 安装依赖 npm install react…

react如何检测

react如何检测

检测 React 应用的方法 使用 PropTypes 进行类型检查 PropTypes 是 React 内置的类型检查工具,用于验证组件的 props 是否符合预期。在开发环境中,PropTypes…

react如何下载

react如何下载

安装 React 的步骤 通过 npm 或 yarn 安装 React,确保已安装 Node.js(版本建议 ≥ 14.0.0)。打开终端或命令行工具,运行以下命令: npx create-reac…