react基本使用(二)

上文已经将react基本的语法过了一遍,接下来用下cli脚手架工具

1.脚手架库 create-react-app

1.官方提供了项目脚手架create-react-app
2.项目的整体技术架构为react+webpack+es6+eslint
3.使用脚手架开发项目的特点:模块化,组件化,工程化

创建项目并启动
npm install -g create-react-app
create-react-app myProject
cd myProject
npm start

2.组件之间通信的2种方式

方法一: 就是用props进行数据传递,但是这样的传递只能一层一层进行传递
        父组件向子组件进行传递-》子组件进行数据的读取
        子组件向父组件进行传递-》子组件进行调用函数
方法二:pubsub.js
        npm install pubsub.js
        组件中引入 import PubSub from pubsub-js
        PubSub.publish('方法名',传递的参数)
        PubSub.subscript('方法名',function(msg,data){
                回调里边进行事件的操作
        })

        
        

3.react-router使用说明

浏览器bom对象有一个history属性会记住我们操作的历史,进行回退前进的操作
在此我们以使用history.js对象为例--此js库对操作进行了封装,操作使用比较简单
代码示例
history.push()
history.go()
history.replace()
history.forword()
history.listen(回调)

react-router相关api
----常用组件
<BrowserRouter>
<HashRouter>
<Route>
<Redirect>
<Link>
<NavLink>
<Switch>

安装使用插件npm install --save reatc-router-dom
使用
import {BrowserRouter} from 'reatc-router-dom'
代码示例:用router对整个应用进行管理
    render (
        (
            <BrowserRouter>
                <App/>
            </BrowserRouter>
        ),
        document.getElementById('root')
    )

4.router中 NavLink 和 Route组件实现路由切换的基本使用,参考网上代码图片示例

5.可以对路由组件NavLink>进行包装--属性统一接收{...props},这个属于调优的部分自行百科 ,不做过多陈述

6.向路由组件传递数据及两种路由跳转方式

路由子组件中获取路由传递的参数
this.props.match.params
上边截图是一种路由跳转的方式
还有点击事件操作路由进行跳转
下边代码简单示例
<button onclick={()=>{this.change(传递的参数)}}></button>
change(data){
    this.props.history.push(path)
}

7.react结合的开源ui框架

常用的react界面ui库
1.国外的material-ui
2.国内的ant-design
下边简介下国内ant-d简单应用
在脚手架项目中使用
npm install antd-mobile --save
全局引入,ui的css文件
在组件内部引入使用--根据官网使用
import {Button} from 'antd-mobile'



综上全局引入全部的样式文件就增加的打包的资源
官网强烈建议,webpack打包插件配置按需打包引入
<1>下载安装包
    npm install react-app-rewired --save
    npm install babel-plugin-import--save
<2>修改默认配置
    package.json中进行修改
    "scripts":{
        "start":"react-app-rewired start",
        "build":"react-app-rewired build",
        "test":"react-app-rewired test --env=jsdom"
    }
<3>新建config-overrides.js文件
内容如下截图

8.react中状态管理redux

js库,和react配合使用。作用是管理应用中多个组件共享的状态
安装依赖包
npm install redux --save

redux作为react中比较重要的一部分 ,今天到此为止,下篇继续(三)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
React项目中进行次封装axios可以提高代码的复用性和可维护性。下面是一个简单的示例来说明如何进行react次封装axios: 1. 首先,在你的项目文件中导入axios库。你可以使用以下命令安装axios库: ```javascript import axios from 'axios'; ``` 2. 创建一个封装了axios请求的文件,例如`Http.js`。在这个文件中,你可以定义一些全局的请求配置,例如设置请求头、设置请求超时时间等。同时,你还可以定义一些通用的请求方法,例如GET、POST等请求方法,并对这些方法进行次封装。这样可以在其他地方直接使用封装后的方法进行请求。以下是一个示例: ```javascript import axios from 'axios'; const Http = axios.create({ baseURL: 'http://api.example.com', // 设置基本的请求地址 timeout: 5000, // 设置请求超时时间 headers: { 'Content-Type': 'application/json', // 设置请求头 }, }); // 封装GET请求方法 export const get = (url, params) => { return Http.get(url, { params }); }; // 封装POST请求方法 export const post = (url, data) => { return Http.post(url, data); }; export default Http; ``` 3. 在实际使用中,你可以在需要发送请求的地方引入封装好的方法,并进行请求操作。以下是一个示例: ```javascript import Http from '@/axios'; import { call } from 'redux-saga/effects'; export function* asyncCheckLogin({payload}) { const res = yield call(Http.reqCheckLogin, payload.values); if(res && res.code === '0'){ // 跳转到首页 payload.history.replace('/'); }else { message.warn("你错了"); } } ``` 通过上述步骤,你可以在React项目中进行次封装axios,提高代码的复用性和可维护性。你可以在封装的文件中设置全局的请求配置,并定义通用的请求方法,然后在其他地方引入并使用这些方法来发送请求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值