图片上传的思路很正确

https://www.jianshu.com/p/c9f030fa6754

1. 获取图片路径

利用react-native-image-crop-pick 从手机中获得图片的地址

使用它的原因,就是比react-native-image-pick支持的功能多一些。

2.  对图片尺寸进行压缩

使用 react-native-image-resizer  对图片进行尺寸上的压缩

4. 如何想要传给后台,还需要将base64,转成二进制文件形式,就需要 formData

React Native 0.62.* [TypeError: Network request failed] on file upload (正常上传文件时遇到的问题)

https://github.com/facebook/react-native/issues/28551

关于正则表达式的使用

1. JavaScript 的replace 的回调函数,获取标签字符串中,img标签src里面的值。

htmlText.replace(/<img [^>]*src=['"]([^'"]+)[^>]*>/gi, function (match, capture) {
console.log("src里面的值",capture);
let t = capture.replace(/data:image\/jpeg;base64,/i, "");

console.log("去掉base64特殊符号的图片编码",t);
srcArr.push(t);
});

// /9j/4Ua/RXhpZgAATU0AKgAAAA

2. 取出标签字符串中,文本内容

 let textReg = new RegExp('<[^<>]+>','g');
let textContent = htmlText.replace(textReg ,"");
// console.log("正文内容 =",textContent);

3. 将标签字符串中的img属性src的值 ,替换掉,置空或者自己想要替代的东西(https://stackoverflow.com/questions/1298531/regular-expression-in-javascript-replace-image-src-attribute

root     = serviceURL("file") + "&src=" + encodeURIComponent(root);
// html itself
html = html.replace(/src=['"](?:[^"'\/]*\/)*([^'"]+)['"]/g, "src='" + root + "/$1'");
//

react native 上传图片(后面有空写一个,完整的案例)的更多相关文章

  1. java nio 写一个完整的http服务器 支持文件上传 chunk传输 gzip 压缩 使用过程 和servlet差不多

    java nio 写一个完整的http服务器  支持文件上传   chunk传输    gzip 压缩      也仿照着 netty处理了NIO的空轮询BUG        本项目并不复杂 代码不多 ...

  2. 五、React事件方法(自写一个方法(函数),然后用按钮onClick触发它、自写方法改变this指向3种写法、

    上接:https://www.cnblogs.com/chenxi188/p/11782349.html 项目目录: my-app/ README.md node_modules/ package.j ...

  3. react全家桶从0搭建一个完整的react项目(react-router4、redux、redux-saga)

    react全家桶从0到1(最新) 本文从零开始,逐步讲解如何用react全家桶搭建一个完整的react项目.文中针对react.webpack.babel.react-route.redux.redu ...

  4. Istio技术与实践04:最佳实践之教你写一个完整的Mixer Adapter

    Istio内置的部分适配器以及相应功能举例如下: circonus:微服务监控分析平台. cloudwatch:针对AWS云资源监控的工具. fluentd:开源的日志采集工具. prometheus ...

  5. AQL Subset Compiler:手把手教你如何写一个完整的编译器

    项目地址:https://github.com/laiy/Awesome-Complier. 转载请注明出处. 前言 这是学校里编译原理课程的大作业,此Project十分适合编译原理的学习,让基本不听 ...

  6. python+selenium+unnitest写一个完整的登陆的验证

    import unittest from selenium import webdriver from time import sleep class lonInTest (unittest.Test ...

  7. 转载【React Native代码】手写验证码倒计时组件

    实例代码: import React, { Component , PropTypes} from 'react'; import { AppRegistry, StyleSheet, Text, V ...

  8. 想学React Native?你只需要一个App!(11月5号更新)

    最近有点空闲时间,顺手研究下react-native,2013年的时候在老师的指导下使用jQuery Mobile做过手机应用,那个运行速度慢呀!让我对WebApp和PhoneGap这一类的跨平台Ap ...

  9. 用一个完整的案例讲解Python数据分析的整个流程和基础知识

    先来想一下数据分析的流程,第一步获取数据,因此本节内容就是获取数据以及对数据的基本操作. 1.数据导入 1.1 导入.xlsx文件 要导入一个.xlsx后缀的Excel文件,可以使用pd.read_e ...

  10. 用JetBrains PyCharm 开发工具写一个简单python案例

    import urllib.request import re #解析html的内容 def getHtml(url): page=urllib.request.urlopen(url) html=p ...

随机推荐

  1. 通过ESP8266WiFi模块调用“心知天气”接口 获取天气信息

    在分析代码之前,首先介绍 ArduinoJson 库的安装及"心知天气"的ID申请 一.安装 ArduinoJson 库 进入 Arduino 开发环境后,选择菜单栏-->工 ...

  2. RBAC(DAC)模型

    基于角色的访问控制模型 ⟨ , ,,, , , ,, ,⟩ U:用户集 S:会话集 O:资源集 Op:操作集 R:角色集 PERMS:OxOp:权限集 RH:RXR(是 的偏序,表示角色的层次结构,其 ...

  3. nginx 同一个域名根据后缀不同访问不同的项目

    server { listen 80; server_name bcgx.work; location / { index login.html login.htm index.php; root / ...

  4. 【ML】序

    以下序言,没有什么实质性内容 搞车需要,头铁开个Machine Learning栏目,希望能长更.

  5. 搭建 springboot 应用

    一.采用 Spring Initializr 搭建springboot应用 步骤: 1.只需要打开网址: https://start.spring.io/: 2.选择使用 Maven 构建,语言 ja ...

  6. 固定代码格式化程序插件-Prettier JetBrains

    基本使用 使用npm install prettier --save-dev为您的项目添加更漂亮或全局安装 使用Prettier选择要格式化的代码或文件 使用"Reformat with P ...

  7. 超强大的PS汉化插件Specs 一键尺寸标注

    尺寸标注是大多数设计师必不可少的细节工作,特别是在一些特定的设计图中,标注至关重要.大部分设计大大都直接用CAD标注,其实借助插件,PS也是完全可以搞定常见的尺寸标注的. 插件介绍 这是一款超级强大的 ...

  8. POD一些概念

    以FAQ的方式来加强对POD的理解: 1.重启了一台机器,之后运行了13天,我看到pod的age并不是我以为的5d,而是远远大于5d.这是因为pod的age,主要是关注uid有没有变化,没有则不会更新 ...

  9. js实现数字每三位加逗号

    需求: 一个数字,比如 1234,23456.23 实现每三位加逗号 改成如下形式: 1234 => 1,234 23456.23 => 23,456.23 方法一 function fo ...

  10. 采样定理与SDM

    1.信噪比=6.02N+1.76dB 对于这个经常引用的AD/DA转换器理论信噪比(SNR)公式,代表一个完美的N位ADC的理论性能.下面先计算N位模数转换器(ADC)的理论量化噪声.一旦通过计算均方 ...