当前位置:首页 > React

express 如何调用react

2026-02-12 02:08:35React

Express 调用 React 的实现方法

Express 和 React 通常分别用于后端和前端开发。要将两者结合,可以通过以下方式实现:

使用 Express 作为 API 服务器

Express 可以作为独立的 API 服务器,React 应用通过 HTTP 请求与之交互:

// Express 服务器代码
const express = require('express');
const app = express();

app.get('/api/data', (req, res) => {
  res.json({ message: 'Hello from Express!' });
});

app.listen(3001, () => {
  console.log('Express server running on port 3001');
});

React 组件中调用 Express API:

// React 组件代码
import React, { useEffect, useState } from 'react';

function App() {
  const [data, setData] = useState(null);

  useEffect(() => {
    fetch('http://localhost:3001/api/data')
      .then(res => res.json())
      .then(data => setData(data));
  }, []);

  return (
    <div>
      {data && <p>{data.message}</p>}
    </div>
  );
}

服务端渲染 (SSR) 方案

使用 Express 渲染 React 应用,实现服务端渲染:

// Express 服务器配置
const express = require('express');
const React = require('react');
const ReactDOMServer = require('react-dom/server');
const App = require('./App').default;

const app = express();

app.get('/', (req, res) => {
  const html = ReactDOMServer.renderToString(<App />);
  res.send(`
    <!DOCTYPE html>
    <html>
      <head>
        <title>React SSR</title>
      </head>
      <body>
        <div id="root">${html}</div>
        <script src="/client.bundle.js"></script>
      </body>
    </html>
  `);
});

app.listen(3000);

代理设置开发环境

开发环境中配置代理,避免跨域问题:

// React 项目的 package.json 中添加
{
  "proxy": "http://localhost:3001"
}

生产环境部署

构建 React 应用并将静态文件交由 Express 托管:

// Express 生产配置
const path = require('path');
const express = require('express');
const app = express();

app.use(express.static(path.join(__dirname, 'client/build')));

app.get('*', (req, res) => {
  res.sendFile(path.join(__dirname, 'client/build', 'index.html'));
});

app.listen(process.env.PORT || 3000);

注意事项

  • 开发环境保持 Express 和 React 应用在不同端口运行
  • 生产环境将 React 构建后的静态文件放在 Express 的静态目录
  • 使用 CORS 中间件处理跨域请求(开发时)
  • 考虑使用 Next.js 等框架简化 SSR 实现

express 如何调用react

标签: expressreact
分享给朋友:

相关文章

react 如何执行

react 如何执行

安装 Node.js 和 npm React 开发需要 Node.js 环境,因为它提供了 npm(或 yarn)包管理工具。从 Node.js 官网 下载并安装最新 LTS 版本。安装完成后,在终端…

react moment如何使用

react moment如何使用

安装 react-moment 通过 npm 或 yarn 安装 react-moment: npm install react-moment 或 yarn add react-moment 基本…

react如何开发组件

react如何开发组件

React 组件开发基础 React 组件分为函数组件和类组件两种形式。函数组件是现代 React 开发的主流方式,结合 Hooks 可以实现完整功能。 函数组件示例: function Gree…

如何选购react

如何选购react

选购 React 相关产品或服务的建议 React 是一个用于构建用户界面的 JavaScript 库,广泛应用于前端开发。以下是选购 React 相关产品(如课程、书籍、工具、组件库等)的参考方法:…

react如何遍历

react如何遍历

遍历数组或对象的方法 在React中,遍历数组或对象通常用于渲染列表或动态生成内容。以下是几种常见的遍历方法: 使用map遍历数组map是遍历数组并返回新数组的高阶函数,适合渲染列表。…

理解如何react

理解如何react

理解React的核心概念 React是一个用于构建用户界面的JavaScript库,专注于通过组件化开发提高代码的可维护性和复用性。其核心思想包括虚拟DOM(Virtual DOM)和单向数据流,能够…