03-React脚手架工具dva和umi,组件库引入,高阶组件

一、DVA

1、安装dva-cli
确保dva版本在0.9.1或以上

$ npm install dva-cli -g
$ dva -v
dva-cli version 0.9.1

2、创建新应用
$ dva new project_name

3、进入项目目录,并启动开发服务器

$ cd dva-quickstart
$ npm start

详见dva官网


二、UMI

1、安装umi
$ yarn global add umi 或 $ npm install -g umi

2、创建项目、进入项目

$ mkdir myapp 
$ cd myapp

3、创建页面
$ umi generate page index

4、启动项目
$ umi dev

5、打包
$ umi bulid

详见umi官网


三、组件库引入

PC端:Ant Design Pro
移动端:Ant Design Mobile

1、安装
$ npm install antd-mobile -D

2、引入react-app-rewired
$ npm install reacr-app-rewired customize-cra -D

3、修改package.json中的配置
将package.json中的“scripts”改为:

"scripts":{
	"start":"react-app-rewired start",
	"build":"react-app-rewired build",
	"test":"react-app-rewired test",
	"eject":"react-app-rewired eject"
}

4、在项目根目录创建config-overrides.js用于修改默认配置
npm install babel-plugin-import -D
然后在config-overrides.js中写入

const {override, fixBabelImports} = require('customize-cra');
module.exports = override(
	fixBabelImports('import',{
		libraryName:'antd-mobile',
		style:'css'
	});
)

5、在组件内使用即可

四、高阶组件

1、Higher-Order Components就是一个函数,传给它一个组件,它返回一个新的组件。

2、功能:

  • 进行某些方法或是属性的复用
  • 让外层的组件替我们完成任务,里层组件直接使用

3、示例代码:

// CopyRight.js 定义一个高阶组件
import React, { Component, Fragment } from 'react';

const CopyRight = Comp => {
    return class extends Component {
        constructor(props) {
            super(props)
            this.state = {
                info: "Orange_SQ"
            }
        }
        render() {
            return (
                <Fragment>
                    <Comp {...this.state}></Comp>
                </Fragment>
            )
        }
    }
}

export default CopyRight
//AComp.js
import React, { Component } from 'react';

class AComp extends Component {
    render() {
        return (
            <div>
                AComp--{this.props.info}
            </div>
        )
    }
}

export default AComp
// App.js中使用方式
import React, { Component } from 'react';
import './App.css';
import CopyRight from './pages/CopyRight '
import AComp from './pages/AComp'

const AHoc = CopyRight(AComp)

class App extends Component {
  render() {
    return (
      <div>
        <h2>高阶组件</h2>
        <AHoc></AHoc>
      </div>
    )
  }
}

export default App;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue-React组件是一个同时支持Vue和React的UI组件,可以在Vue和React项目中使用。下面以Element-React为例,介绍如何使用Vue-React组件。 1. 安装Element-React:可以使用npm或yarn安装,命令如下: ``` npm install element-react --save 或 yarn add element-react ``` 2. 引入样式文件:在主入口文件中引入Element-React的样式文件,如下: ``` import 'element-react/dist/theme-chalk/index.css'; ``` 3. 引入组件:在Vue或React组件中按需引入需要使用的Element-React组件,如下: 在Vue组件中: ``` <template> <div> <el-button>Vue Button</el-button> </div> </template> <script> import { Button } from 'element-react'; export default { components: { 'el-button': Button } } </script> ``` 在React组件中: ``` import { Button } from 'element-react'; class MyComponent extends React.Component { render() { return ( <div> <Button>React Button</Button> </div> ) } } ``` 4. 使用组件:在Vue或React组件中使用引入的Element-React组件,如下: 在Vue组件中: ``` <template> <div> <el-button>Vue Button</el-button> </div> </template> ``` 在React组件中: ``` import { Button } from 'element-react'; class MyComponent extends React.Component { render() { return ( <div> <Button>React Button</Button> </div> ) } } ``` 需要注意的是,不同的Vue-React组件使用方法略有不同,需要根据具体组件的文档进行使用。同时,也需要根据项目需要选择合适的组件,避免出现兼容性和功能不匹配的问题。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值