react怎么与MySQL_使用 react + koa2 + mysql 开发出一个简洁风格的个人博客

前言

使用 react 有一段时间了, 也想用 react 去写点什么,平时接触最多的就是 blog 了,于是乎借助 antd 这个 UI 框架设计出了一个极其简约风格的 spa 博客。

目的也是将 react 的生态圈的工具梳理一遍,后端则采用了 koa + sequelize + mysql 的技术选型(我司用的就是这个技术栈啦,所以笔者也用这个了)

博客介绍

前后台分离式开发(项目中也包含博客的后台管理系统),为了方便记录后端开发过程,笔者将后端也一起放在同个项目文件夹中。

博客样式几乎借助于 antd 这个优秀的 UI 框架,主打简约风格,是笔者借鉴了 antd 官方的风格所设计~

分出了几个分支便于学习和查看开发记录,相信这个项目会让刚接触 react 的伙伴学到一些的

博客地址 - 联系我可以 email gershonv@163.com | QQ 434358603 | 博客关于页面留言~

用户名 admin/admin 最高权限,求小伙伴不要乱删数据,乱删数据其他伙伴会没什么数据看的。

给最高权限是为了让大家看到博主的权限。体验博客完整的功能。

后台访问路径 /admin

技术栈

前端 (基于 create-react-app eject 后的配置)

react v16.8.1

redux redux-thunk

react-router4

axios

marked highlight.js

后端 (自构建后台项目)

koa2 + koa-router

sequelize + mysql

jwt + bcrypt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
React一个UI框架,本身并不提供访问数据库的能力。如果你想在React应用程序中访问MySQL数据库,你需要使用一个后端框架来处理数据库查询,并从React应用程序中发送HTTP请求来访问这个后端API。 常用的后端框架有Express、Koa、Hapi等。在这里,我们以Express为例,介绍如何从React应用程序中访问MySQL数据库。 首先,你需要安装MySQL数据库,并使用Node.js驱动程序连接到它。可以使用mysql2或mysqljs等库来连接MySQL数据库。例如: ``` const mysql = require('mysql2/promise'); const connection = await mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'my_database' }); const [rows, fields] = await connection.execute('SELECT * FROM my_table'); ``` 这个代码片段使用mysql2库连接到MySQL数据库,并执行一个SELECT查询。查询结果存储在`rows`变量中。 接下来,你需要在Express应用程序中定义一个API端点,用于从React应用程序中访问MySQL数据库。例如: ``` const express = require('express'); const mysql = require('mysql2/promise'); const app = express(); app.get('/data', async (req, res) => { const connection = await mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'my_database' }); const [rows, fields] = await connection.execute('SELECT * FROM my_table'); res.json(rows); }); app.listen(3000, () => { console.log('Server started on port 3000'); }); ``` 这个代码片段使用Express框架定义了一个名为`/data`的API端点,用于从MySQL数据库中获取数据并将其返回给React应用程序。当React应用程序发送HTTP GET请求到`/data`端点时,Express应用程序将查询MySQL数据库,并将结果作为JSON响应发送回去。 最后,在React应用程序中,你可以使用Axios或Fetch等库来发送HTTP请求,从而访问这个后端API。例如: ``` import React, { useState, useEffect } from 'react'; import axios from 'axios'; function App() { const [data, setData] = useState([]); useEffect(() => { async function fetchData() { const response = await axios.get('/data'); setData(response.data); } fetchData(); }, []); return ( <div> {data.map(item => ( <div>{item.name}</div> ))} </div> ); } export default App; ``` 这个代码片段使用Axios库发送HTTP GET请求到`/data`端点,并将响应数据存储在`data`状态变量中。然后,使用`map`函数将数据渲染为React组件。 需要注意的是,这个代码片段假设后端API运行在同一个主机上,并使用默认端口3000。如果你的后端API运行在不同的主机或端口上,需要相应地修改Axios请求的URL。 总的来说,从React应用程序中访问MySQL数据库需要连接到数据库、定义Express API端点和使用Axios发送HTTP请求等多个步骤。但是,这些步骤都是相对独立的,你可以根据自己的需求和技能水平来选择和实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值