用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化

这篇具有很好参考价值的文章主要介绍了用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

  • 一. 简述
  • 二. Fork 项目
  • 三. 搭建开发环境
  • 四. 初始化皮肤项目
  • 五. 添加相关依赖
  • 六. 预览

一. 简述

大名鼎鼎的 xxl-job 任务调度中心我们应该都使用过,项目地址:xxl-job。它是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。
用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化,用React给XXL-JOB开发一个新皮肤,前端,Vue add React,React Hooks,TS,antd,XXL-JOB
该项目中的页面是使用freemarker做页面渲染的。这里我们使用 ReactAntd的技术栈实现一个管理平台的新皮肤。接下来跟着我一步步实现这个新皮肤吧!

二. Fork 项目

这里我们可以在码云上将 xxl-job 项目 fork 到自己的仓库。这里使用的是最新的分支 2.4.0;从这个分支作为分支起点,如下图:
用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化,用React给XXL-JOB开发一个新皮肤,前端,Vue add React,React Hooks,TS,antd,XXL-JOB

三. 搭建开发环境

接下来我们先搭建一个 xxl-job 的开发环境。这里我们需要现在项目根目录创建一个 log目录(用来存放运行的日志文件)。这里我们需要修改下面几个文件:

  • doc/db/tables_xxl_job.sql:建表语句,在自己的数据库上执行该 SQL
  • xxl-job-admin/src/main/resources/application.properties:需要修改数据库文件
    ### xxl-job, datasource 修改自己数据库地址
    spring.datasource.url=jdbc:mysql://192.168.110.107:3306/xxl_job?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai
    spring.datasource.username=root
    spring.datasource.password=123456
    spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
    
  • xxl-job-admin/src/main/resources/logback.xml:修改存放日志路径
    <?xml version="1.0" encoding="UTF-8"?>
    <configuration debug="false" scan="true" scanPeriod="1 seconds">
    
        <contextName>logback</contextName>
        <property name="log.path" value="./log/xxl-job-admin.log"/>
    
        <!-- 忽略其他部分 -->
    </configuration>
    
  • xxl-job-executor-samples/xxl-job-executor-sample-springboot/src/main/resources/logback.xml:修改存放日志路径
    <?xml version="1.0" encoding="UTF-8"?>
    <configuration debug="false" scan="true" scanPeriod="1 seconds">
    
        <contextName>logback</contextName>
        <property name="log.path" value="./log/xxl-job-executor-sample-springboot.log"/>
    
        <!-- 忽略其他部分 -->
    </configuration>
    

接下来分别启动,xxl-job-admin的启动类和 xxl-job-executor-samplespringboot 模块。
用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化,用React给XXL-JOB开发一个新皮肤,前端,Vue add React,React Hooks,TS,antd,XXL-JOB
接着我们访问:http://localhost:8080/xxl-job-admin。输入账号:admin密码:123456
用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化,用React给XXL-JOB开发一个新皮肤,前端,Vue add React,React Hooks,TS,antd,XXL-JOB

这样开发环境就搞定了,这下来我们开始初始化皮肤的项目。

四. 初始化皮肤项目

这里我们在项目根目录中创建 xxl-job-web 目录,用来存放前端项目。
用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化,用React给XXL-JOB开发一个新皮肤,前端,Vue add React,React Hooks,TS,antd,XXL-JOB
这里我们使用 vite 来初始化项目。选择 React 框架和 TS,创建完成执行执行 yarn install 安装依赖。
用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化,用React给XXL-JOB开发一个新皮肤,前端,Vue add React,React Hooks,TS,antd,XXL-JOB

五. 添加相关依赖

这里添加我们需要的依赖,使用的依赖如下:

依赖 版本 描述
antd 5.2.6 前端 UI 组件库
axios 1.6.5 HTTP 请求库
@ant-design/icons 5.2.6 图标库
@ant-design/charts 2.0.3 charts 库
ahooks 3.7.8 hooks工具库
less 4.2.0 css 预处理库
less-loader 11.1.4 webpack 构建处理 less 库
react-router-dom 6.21.1 前端路由库
zustand 4.4.7 简单好用的状态管理库
@emotion/react 11.11.3 React 组件中样式的处理和管理功能库
@emotion/styled 11.11.0 提供了一种创建样式化组件的方式的库

这里 package.json如下:

{
  "name": "xxl-job-web",
  "description": "xxl-job新皮肤",
  "private": true,
  "version": "0.0.0",
  "type": "module",
  "scripts": {
    "dev": "vite",
    "build": "tsc && vite build",
    "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
    "preview": "vite preview"
  },
  "dependencies": {
    "@ant-design/charts": "^2.0.3",
    "@ant-design/icons": "^5.2.6",
    "@emotion/react": "^11.11.3",
    "@emotion/styled": "^11.11.0",
    "ahooks": "^3.7.8",
    "antd": "^5.12.8",
    "axios": "^1.6.5",
    "less": "^4.2.0",
    "less-loader": "^11.1.4",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-router-dom": "^6.21.1",
    "zustand": "^4.4.7"
  },
  "devDependencies": {
    "@types/node": "^20.10.7",
    "@types/react": "^18.2.43",
    "@types/react-dom": "^18.2.17",
    "@types/react-router-dom": "^5.3.3",
    "@typescript-eslint/eslint-plugin": "^6.14.0",
    "@typescript-eslint/parser": "^6.14.0",
    "@vitejs/plugin-react": "^4.2.1",
    "eslint": "^8.55.0",
    "eslint-plugin-react-hooks": "^4.6.0",
    "eslint-plugin-react-refresh": "^0.4.5",
    "typescript": "^5.2.2",
    "vite": "^5.0.8"
  }
}


六. 预览

这里我们将vite 初始化的文件整理下,移除一些不需要的文件。仅留下 App.tsxmain.tsx 文件。
用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化,用React给XXL-JOB开发一个新皮肤,前端,Vue add React,React Hooks,TS,antd,XXL-JOB
这里我们在 index.html文件中修改 title 标签内容。

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/vite.svg" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>任务调度中心</title>
  </head>
  <body>
    <div id="root"></div>
    <script type="module" src="/src/main.tsx"></script>
  </body>
</html>

main.tsx 文件修改为如下:

import React from 'react'
import ReactDOM from 'react-dom/client'
import Application from './App.tsx'

ReactDOM.createRoot(document.getElementById('root')!).render(
  <React.StrictMode>
    <Application />
  </React.StrictMode>,
)

App.tsx 文件修改为如下:

const Application = () => <h1>任务调度中心</h1>

export default Application

接着我们启动项目:yarn dev
用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化,用React给XXL-JOB开发一个新皮肤,前端,Vue add React,React Hooks,TS,antd,XXL-JOB
好了,现在我们项目已经初始化完成,下一篇文章将介绍配置 vite、规划项目目录、配置路由。文章来源地址https://www.toymoban.com/news/detail-789227.html

到了这里,关于用React给XXL-JOB开发一个新皮肤(一):环境搭建和项目初始化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • SpringCloud-搭建XXL-JOB任务调度平台教程

    SpringCloud-搭建XXL-JOB任务调度平台教程

    XXL-JOB是一个轻量级分布式任务调度框架,旨在解决分布式系统中的任务调度问题,提高系统的处理效率和任务管理的便捷性。 1. XXL-JOB任务调度概念 XXL-JOB任务调度平台通过中心化管理方式,使得任务的调度更加高效和集中。平台不仅提供了丰富的任务调度功能,例如:CRON表

    2024年04月28日
    浏览(13)
  • 微服务开发系列 第十一篇:XXL-JOB

    微服务开发系列 第十一篇:XXL-JOB

    A、技术栈 开发语言:Java 1.8 数据库:MySQL、Redis、MongoDB、Elasticsearch 微服务框架:Spring Cloud Alibaba 微服务网关:Spring Cloud Gateway 服务注册和配置中心:Nacos 分布式事务:Seata 链路追踪框架:Sleuth 服务降级与熔断:Sentinel ORM框架:MyBatis-Plus 分布式任务调度平台:XXL-JOB 消息中间

    2024年02月10日
    浏览(9)
  • 基于docker的分布式任务调度系统xxl-job搭建

    基于docker的分布式任务调度系统xxl-job搭建

    本文所使用的操作系统为: CentOS-7-x86_64-DVD-2009 xxl-job 依赖 mysql,所以必须要安装mysql才行! 访问以下链接:https://hub.docker.com/_/mysql/ 寻找自己需要的MySQL版本拉取即可 1.下载镜像 这里未指定版本号,默认拉取的是最新MySQL镜像 2.导入zip包 下载xxljob项目,查看releases版本 https:

    2024年02月20日
    浏览(14)
  • XXL-JOB分布式任务调度平台搭建以及和SpringBoot整合应用

    XXL-JOB分布式任务调度平台搭建以及和SpringBoot整合应用

    XXL-JOB 是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 可以前往 Gitee 地址进行下载使用:   代码结构如下: 运行 SQL 文件至本地数据库: 修改 xxl-job-admin 模块的 yml 文件

    2023年04月21日
    浏览(10)
  • 【 XXL-JOB】 XXL-JOB任务分片

    【 XXL-JOB】 XXL-JOB任务分片

    xxl-job 是一个分布式任务调度平台,支持定时任务和分片任务。其中,分片任务可以将一个大任务拆分成多个小任务,分布式地执行,提高任务的执行效率和可靠性。分片任务中,有一种特殊的任务类型叫做分片广播任务,可以将一个任务广播到所有的执行器节点上执行,本

    2024年02月09日
    浏览(11)
  • Xxl-job安装部署以及SpringBoot集成Xxl-job使用

    Xxl-job安装部署以及SpringBoot集成Xxl-job使用

    1、安装Xxl-job: 可以使用docker拉取镜像部署和源码编译两种方式,这里选择源码编译安装。 代码拉取地址: 官方开发文档: 2、打开项目 使用Maven打开项目,下载相关的jar包依赖。配置相关配置文件 这里可以参考官方开发文档进行配置。 3、初始化数据库 项目中包含数据库

    2023年04月25日
    浏览(10)
  • XXL-JOB详细说明

    XXL-JOB详细说明

    单机:Timer、ExectorService、spring@scheduled 分布式:xxl-job、quartz、elastic-job 由调度中心和执行器组成,调度中心提供一个web管理配置任务和执行器,调度中心通过rpc触发执行器 1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手; 2、动态:支持动态修改任务状

    2024年02月10日
    浏览(13)
  • xxl-Job基础配置

    xxl-Job基础配置

    介绍: XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。 几个特性: 1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手; 2、动态:支持动态修改

    2024年02月09日
    浏览(9)
  • XXL-JOB任务分片

    XXL-JOB任务分片

    单个任务:一个任务实例便可完成 单机单任务:单机模式下任何路由模式都只有一个实例执行 集群单任务:由路由策略(广播模式除外)选择其中一个实例完成 分片任务:集群部署,每个实例都同时执行一部分数据。分片方式:取模分片,范围分片 单机多任务分片:单机模式

    2024年02月08日
    浏览(15)
  • 【分布式任务调度平台 XXL-JOB 急速入门】从零开始将 XXL-JOB 接入到自己的项目

    【分布式任务调度平台 XXL-JOB 急速入门】从零开始将 XXL-JOB 接入到自己的项目

                                    💧 分布式任务调度平台 X X L − J O B 急速入门:从零开始将 X X L − J O B 接入到自己的项目 color{#FF1493}{分布式任务调度平台 XXL-JOB 急速入门:从零开始将 XXL-JOB 接入到自己的项目} 分布式任务调度平台 XX L − J OB 急速入门:从零

    2024年02月14日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包