React --- axios


前言:

在编写vue里的项目时,必须要用和后台进行合作,始终绕不开对 axios 的使用 ,vue3 中 axios 进行了一些重要的更新,在这里分享给大家以供参考

一、axios的介绍

1.axios是什么?

  • Axios 是一个基于 promise 的HTTP库,应用于浏览器端和node.js,前端最流行的 ajax 请求库
  • Axios 在服务端它使用原生 node.jshttp 模块,而在客户端(浏览端)则使用 XMLHttpRequests
  • Axios 可以拦截请求和响应、转换请求和响应数据、取消请求、自动转换 JSON 数据
  • 参考文档:https://github.com/axios/axios
  • Axios 安装方式:npm install axios

2.axios 特点

	 - 基于 xhr + promise 的异步 ajax 请求库
	 - 支持请求取消
	 - 批量发送多个请求
	 - 支持Promise API
	 - 客户端支持防御XSRF
	 - 浏览器端/node 端都可以使用
	 - 拦截请求与响应,比如:在请求前添加授权和响应前做一些事情。
	 - 转换请求数据和响应数据,比如:进行请求加密或者响应数据加密。

3.Axios浏览器支持

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是使用react-quill上传图片的步骤: 1. 首先,你需要安装react-quill和相关的依赖包。你可以使用以下命令来安装: ```shell npm install react-quill axios ``` 2. 在你的React组件中引入react-quill和axios: ```javascript import ReactQuill from 'react-quill'; import 'react-quill/dist/quill.snow.css'; import axios from 'axios'; ``` 3. 在你的组件中创建一个状态来存储编辑器的内容和上传的图片URL: ```javascript const [editorHtml, setEditorHtml] = useState(''); const [imageUrl, setImageUrl] = useState(''); ``` 4. 创建一个函数来处理图片上传: ```javascript const handleImageUpload = async (file) => { const formData = new FormData(); formData.append('image', file); try { const response = await axios.post('YOUR_UPLOAD_URL', formData); const imageUrl = response.data.imageUrl; setImageUrl(imageUrl); } catch (error) { console.error('Error uploading image', error); } }; ``` 请将`YOUR_UPLOAD_URL`替换为你的图片上传接口的URL。 5. 在你的组件中渲染react-quill编辑器,并配置相关的属性和事件处理函数: ```javascript <ReactQuill value={editorHtml} onChange={setEditorHtml} modules={{ toolbar: { container: [ [{ header: [1, 2, false] }], ['bold', 'italic', 'underline', 'strike', 'blockquote'], [{ list: 'ordered' }, { list: 'bullet' }], ['link', 'image'], ['clean'], ], handlers: { image: () => { const input = document.createElement('input'); input.setAttribute('type', 'file'); input.setAttribute('accept', 'image/*'); input.click(); input.onchange = async () => { const file = input.files[0]; const range = quillRef.current.getEditor().getSelection(true); quillRef.current.getEditor().insertEmbed(range.index, 'image', 'data:image', 'user'); quillRef.current.getEditor().setSelection(range.index + 1); handleImageUpload(file); }; }, }, }, }} /> ``` 请将`YOUR_UPLOAD_URL`替换为你的图片上传接口的URL。 6. 最后,你可以在编辑器中插入图片并将其上传到服务器。上传成功后,你可以将图片的URL设置为`imageUrl`状态,并在编辑器中显示图片: ```javascript <ReactQuill value={editorHtml} onChange={setEditorHtml} modules={...} formats={...} style={{ height: '300px' }} /> {imageUrl && <img src={imageUrl} alt="Uploaded" />} ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值