搭建react空项目

前言

date:2020-12-25

本身不是做前端的,但是偶尔也会自己做个小项目,相比vue更喜欢react。但是前端跟后端的用法差距有些大(可能是前端不够熟练吧),每次新建一个前端项目都要捣鼓好久。所以索性就记录一下步骤并搭建一个空项目。以后用的时候直接去github上拉就行了。

项目地址:react_template

在GitHub上上传了一个空项目。

除了必要的脚手架以外还添加了如下依赖:

  • antd,各种定义好的组件
  • axios, 处理异步请求
  • react-router-dom,处理前端路由
  • redux、react-redux、redux-saga处理状态
  • react-app-rewired customize-cra babel-plugin-import,antd按需打包

下面讲述一下这个空项目是如何完成的:

步骤

下载依赖

 npm install antd --save
 npm install redux --save
 npm install --save redux-saga
 npm install --save react-redux
 npm install --save react-router-dom
 npm install axios 
# 下面是按需打包插件
npm install react-app-rewired customize-cra babel-plugin-import

按需打包

上面代码块中最后一行是下载的按需打包的依赖,除了依赖还需要一些必要的设置

1. 配置config-overrides.js文件,该文件要放到项目根目录下.根目录是项目根目录,不是src下面

/**
 * antd中有很多组件,我们不可能全部都使用,但是我们现在都引入了,在打包的时候应该按需进行打包,不能所有的都打包
 */
const {override, fixBabelImports} = require('customize-cra')

module.exports = override(
    //针对antd实现按需打包,只会打包import中出现的组件
    fixBabelImports('import',{
        libraryName: 'antd', //针对antd库
        libraryDirectory: 'es', //使用
        style: 'css' //自动打包相关的样式
    })
)

2. 替换package.json中的内容

//在	package.json中默认的启动编译脚本如下,也就是使用react-scripts进行启动、编译等命令
"scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  }
//现在修改为下面的方式
"scripts": {
    "start": "react-app-rewired start",
    "build": "react-app-rewired build",
    "test": "react-app-rewired test",
    "eject": "react-app-rewired eject"
  }
//其实可以看到,只是换了启动脚本。react-app-rewired对react-scripts进行了简单的封装,并加在了上面写的config-overrides.js文件

重置默认样式

1. 在public/css目录下新建文件reset.css。

/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

html {
    width: 100%;
    height: 100%;
}

body {
    width: 100%;
    height: 100%;
    overflow-y:hidden; /* 加margin以后,页面会出现滚动条,加这句就不会了 */
    overflow-x: hidden; /* 加margin以后,页面会出现滚动条,加这句就不会了 */
}

#root {
    width: 100%;
    height: 100%;
}

2. 在index.html中引用此样式

<link rel="stylesheet" type="text/css" href="/css/reset.css">

配置支持less并设置可以支持antd自定义主题

配置less文件

react模式是不支持less样式文件的,需要进行配置。网上大多都是说使用eject命令将webpack.config.js文件暴露出来的。但是我试了很多次都不生效。所以放弃了。(如果以后感兴趣可以百度搜:react less不生效就能搜到百度的方法)

这里介绍antd官网的一种方式。官网教程传送门

项目根目录下安装依赖:

 npm install @craco/craco
 npm install craco-less 

Package.json文件更改scripts中的内容

 
//更改前
 "scripts": {
   "start": "react-scripts start",
   "build": "react-scripts build",
   "test": "react-scripts test",
   "eject": "react-scripts eject"
 },
 //更改后
 "scripts": {
   "start": "craco start",
   "build": "craco build",
   "test": "craco test",
   "eject": "react-scripts eject"
 }

根目录创建文件craco.config.js并添加如下内容

const CracoLessPlugin = require('craco-less');
 ​
   module.exports = {
       plugins: [
           {
               plugin: CracoLessPlugin,
               options: {
                   lessLoaderOptions: {
                       lessOptions: {
                           modifyVars: { '@primary-color': '#1DA57A' },
                           javascriptEnabled: true,
                       },
                   },
               },
           },
       ],
   };

App.css改为App.less并在文件头部加入下面一行

 @import '~antd/dist/antd.less';

以上就完成了使该项目支持less样式表文件,并可以支持自定义主题。

(本节2020-01-16更新)

*尚未解决的问题

1. 跨域问题。目前没有对跨域进行配置,如果要与后端对接接口需要自行配置。

 

以上配置改天有时间会添加上的。

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 为了搭建一个React语言的h5项目框架,您需要以下步骤: 1. 安装 Node.js 和 npm:Node.js 是 JavaScript 的运行环境,npm 是 JavaScript 包管理器。 2. 创建一个文件夹,作为您的项目的根目录。 3. 在命令行中,进入您的项目目录,然后使用以下命令初始化项目: ``` npm init -y ``` 4. 安装 React,并作为项目的依赖项: ``` npm install react react-dom --save ``` 5. 创建一个名为 "src" 的文件夹,用于存储您的 React 组件。 6. 创建一个名为 "index.js" 的文件,用于导出您的项目的入口组件。 7. 创建一个 HTML 文件,用于渲染您的 React 组件。 8. 在命令行中,运行以下命令以启动项目: ``` npm start ``` 现在您的 React h5 项目框架已经创建好了!您可以开始编写 React 组件并逐步完善您的项目。 ### 回答2: 要搭建一个React语言的H5项目框架,我们需要遵循以下步骤: 第一步,安装Node.js。在官网上下载并安装Node.js,它提供了NPM(Node Package Manager)管理工具,用于安装和管理第三方模块。 第二步,创建项目文件夹。在合适的位置创建一个文件夹,作为项目的根目录。 第三步,初始化项目。在命令行中进入项目根目录,执行命令 "npm init",按照提示填写项目的基本信息,例如名称、版本号等。这将会在项目根目录创建一个package.json文件,用于记录项目的依赖和配置信息。 第四步,安装React和相关依赖。在命令行中执行命令 "npm install react react-dom",这将会安装ReactReact DOM模块作为我们项目的依赖。 第五步,配置Babel。在命令行中执行命令 "npm install babel-loader @babel/core @babel/preset-react",这将会安装Babel及其相关模块,用于将React语法转换为浏览器可以理解的代码。 第六步,创建并配置Webpack。在命令行中执行命令 "npm install webpack webpack-cli webpack-dev-server html-webpack-plugin",这将安装Webpack和相关模块,用于打包和开发服务器。 第七步,创建并配置基本文件。在项目根目录下创建一个src文件夹,用于存放React组件和相关资源文件。创建一个index.js文件作为入口文件,引入ReactReactDOM模块,并渲染一个根组件。创建一个index.html文件,用于作为项目的入口页面。 第八步,配置Webpack。在项目根目录下创建一个webpack.config.js文件,配置Webpack的入口、输出、加载器等信息。 第九步,启动项目。在命令行中执行命令 "npm run start",这将会启动Webpack Dev Server,打开浏览器并访问 http://localhost:8080,就可以看到React H5项目的效果了。 以上就是简单搭建一个React语言的H5项目框架的步骤。当然,这只是一个最基本的框架,具体的配置还可以根据项目需求进行进一步调整和扩展。 ### 回答3: 搭建一个基于React语言的H5项目框架可以参考以下步骤: 1. 环境搭建:首先确保你的电脑已经安装了Node.js和npm包管理工具。可以通过在终端运行命令`node -v`和`npm -v`来检查是否安装成功。 2. 创建项目目录:在适当的位置创建一个项目文件夹,并进入该文件夹。 3. 初始化项目:在终端运行命令`npm init`来初始化一个新的npm项目。按照提示完成项目的相关配置,例如项目名称、版本号、作者等。 4. 安装React相关依赖:运行命令`npm install --save react react-dom`来安装React及其DOM渲染的依赖。 5. 安装开发工具:运行命令`npm install --save-dev webpack webpack-cli webpack-dev-server`来安装Webpack及其相关开发工具。 6. 创建配置文件:在项目根目录下创建一个`webpack.config.js`文件,并配置Webpack的基本设置。例如设置入口文件、输出文件、解析规则等。 7. 创建React组件:在项目目录下创建一个`src`文件夹,并在其中创建一个`App.js`文件作为项目的根组件。编写React代码,可以使用函数组件或类组件来定义你的页面结构。 8. 创建入口文件:在`src`文件夹下创建一个`index.js`文件作为React应用的入口文件。在该文件中导入根组件并使用`ReactDOM.render()`方法将其渲染到页面中。 9. 配置启动命令:在`package.json`文件中的`scripts`属性中新增一个`start`命令,设置为`"webpack-dev-server --open"`。这将启动Webpack的开发服务器,并自动打开项目页面。 10. 启动项目:在终端运行命令`npm start`来启动项目,你将在浏览器中看到React组件渲染的页面。 这是一个简单的React语言的H5项目框架搭建流程。根据项目的需求和复杂性,你可能还需要进行更多的配置和安装依赖来完善项目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值