本文适宜学习React开发的初学者,通过此框架的应用以利于前期应用antd Pro框架开发更简单的前端页面
Step 1:搭建umi根本框架
umi.js脚手架根本搭建
搭建实现后能够失去如下图所示的我的项目
运行yarn start
指令能够在浏览器中看到如图所示的界面
实现以上操作后的问题
- 我的项目默认应用ts及React Hooks来实现对老手不是很敌对
- 没有引入dva.js
Step 2:引入dva.js
1.首先找到.umirc.ts文件,在配置中退出如下配置
dva: {
immer: true,
hmr: false,
},
2.在src文件夹下建设 models文件夹,而后在pages文件夹上面建设Demo1文件夹,并在Demo1文件夹中建设models文件夹,建设实现之后如下图所示
更具体的阐明请参考dva配置
Step 3:应用class组件书写新页面
函数组件和Class组件请参考React官网文档:React组件阐明
在src/pages/Demo1文件夹(上文已建设)上面建设index.js文件
其根本代码如下:
import React, {Fragment} from 'react';
class Demo extends React.PureComponent {
constructor(props) {
super(props);
}
render() {
console.log(this.props);
return (
<Fragment>
<div>第一个页面</div>
</Fragment>
)
}
}
export default Demo;
Step 4:定义dva Models并建设连贯
在src/pages/Demo1/models中建设文件DemoModels.js文件
export default {
namespace: 'basicDataModel',
state: {
data: [
{text: 1, value: 2},
],
},
effects: {},
reducers: {
save(state, action) {
return {
...state,
...action.payload,
};
},
},
};
输出以上的代码即建设了名称为basicDataModel的model,
接下来在Step3中建设的index.js中输出如下的代码建设与model的连贯
@connect(({basicDataModel}) => ({
basicDataModel,
}))
class Demo extends React.PureComponent {
留神@connect为函数装璜必须写在class的后面,在index.js中的render函数中输出如下代码即可打印出在this.props能够拜访basicDataModel
console.log(this.props);
Step 5:残缺的umi配置(.umirc.ts文件夹中配置)
配置根据请参考
import { defineConfig } from 'umi';
export default defineConfig({
nodeModulesTransform: {
type: 'none',
},
routes: [
{ path: '/', component: '@/pages/index' },
],
dva: {
immer: true,
hmr: false,
},
ignoreMomentLocale: true,
hash: true,
targets: {
ie: 9,
},
fastRefresh: {},
});
该脚手架的git地址
发表回复