# DEX_Order **Repository Path**: sevendegrees/dex_order ## Basic Information - **Project Name**: DEX_Order - **Description**: 基于订单簿模式开发的DApp服务 - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-03-26 - **Last Updated**: 2023-03-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Dex_Order 基于订单簿模式开发的DApp服务 This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). ## 1.整合流程 ### 1.1 合约项目初始化 ```shell truffle init ``` ### 1.2 创建前端脚手架 > 使用 *`create-react-app`* *创建前端项目* ### 1.3 整合合约和前端 > 将智能合约编译后的build目录下的json文件,以及智能合约的源文件、测试文件、部署文件复制到当前前端项目一级目录中。安装相关web3依赖 ### 1.4 安装web3依赖 > 在当前前端项目中安装合约需要的依赖* ```shell # 安装合约安全依赖* cnpm install openzeppelin-solidity # 验证合约环境是否正常* truffle compile ``` ### 1.5 修改truffle-config.json配置 > 修改合约编译后的 *`build`* *文件夹,将其目标位置改为* *`src`* *目录下* ```shell module.exports = { networks: {...}, "contracts_build_directory": "./src/build" } ``` ### 1.5 合约连接 ```shell # 安装web3依赖* cnpm install --save web3@1.8.0 # 将合约部署到测试网络(每次部署会先编译合约)* # --reset参数用于在测试环境覆盖以前的合约* truffle migrate [--reset] ``` ## 2.智能合约全栈开发 ### 2.1 全局对象管理 - window全局挂载 - react hook 中的 useContent - 自定义发布-订阅 - redux(不适合存储非序列化的对象[对象形式的类信息],会有异常产生) ### 2.2 Redux安装 ```shell # 新版redux新增了@reduxjs/toolkit依赖,将之前分散的reducer、action等整合到一个文件中* cnpm install --save redux react-redux @reduxjs/toolkit ``` ### 2.3 antd安装 ```shell cnpm install --save antd ```