react-mde 使用markdown编辑器

react-mde 是简易markdown编辑面板到一个包,在react中使用。

安装react-mde包,在运行的时候
最开始安装了版本5.8.0 由于和本项目出现冲突,所以升级版本为6.0.0,由于6.0.0中暴露的接口比较少,比如6.0.0中没有暴露出minPreviewHeight 无法通过参数去调整markdown preview面板的min-hieght,只能通过样式修改去做,比较不方便。

  • 5.8.0及之前,markdownEditor中的输入值是存储在mdeState中的,mdeState中包括markdown(输入值)和state状态(write编辑状态/review预览状态),在6.0.0中,直接存在了value中,并state状态更改为了currentTag
  • 从6.0.0版本直升到了7.0.0,取消了onTabChange 和 currentTag ,无法主动去干涉当前到状态
  • 到了7.0.3,重新开放了currentTag,但是更名为selectedTab,以及开放了onTabChange

查看npm官网中中react-mde中的版本更新记录,并到源码中去查看对应版本到源码,在7.0.2中找到需要到暴露参数,所以打算直接将项目中到ract-mde包升级到7.0.2版本。
但是在npm install 之后,起项目的时候报错

Failed to compile../node_modules/react-mde/lib/js/commands/index.js
Module not found: Can't resolve './strikeThroughCommand' in '/opt/app-root/src/www/mo_prod/frontend/node_modules/react-mde/lib/js/commands'

确认操作无误,且重新安装之后还是报错,cd到项目中查看react-mde包中到lib文件,发现确实有strikeThroughCommand.js 这个文件,只是文件名出现偏差 ,变为了strikethroughCommand。
其中到through有大小写的区别,所以起项目的时候找不到lib包中的文件报错。

跟着react-mde版本更新的记录网上摸索,在7.4.1这个问题才被修复。对应的文件被重新汇总到一个文件夹中。具体代码就不展示了。

结果实际安装,发现上图的几个版本包都是坏的,安装了也无法使用。所以我这边最后安装了版本7.4.1


目前最新的react-mde版本已经更新到了11.0.0,为这里是因为项目最好不要因为版本升级造成太大到变化,所以只能尽量小版本的升级。其他情况可以尽可能用比较新的版本

react-mde版本5.8.0 - 7.4.1踩坑相关推荐

  1. 警惕参数变化,MySQL 8.0 升级避免再次踩坑

    MySQL 8.0新特性专栏目录 <MySQL开发规范>过时了,视图查询性能提升了一万倍 你真的会用EXPLAIN么,SQL性能优化王者晋级之路 索引三剑客之降序索引和不可见索引 千呼万唤 ...

  2. springcloud 2.0 服务链路追踪踩坑以及一些小小的理解

    在微服务系统中,随着业务的发展,系统会变得越来越大,这样一来各个服务之间的调用关系也就变得越来越复杂.一个 HTTP 请求会调用多个不同的服务接口来处理返回最后的结果,在这个调用过程中,可能会因为某个 ...

  3. Alphapose - Windows下Alphapose(Pytorch 1.1+)版本2021最新环境配置步骤以及踩坑说明

    文章目录 1 Alphapose 2 环境配置 2.1 官方安装说明 2.2 Anaconda创建虚拟环境Alphapose 2.3 获取Alphapose仓库 2.4 安装相关依赖库 2.4.1 激 ...

  4. seata执行闪退_Seata 1.2.0的配置以及踩坑记录

    首先Seata1.2.0版本不在自带sql,且在file.conf文件中没有了vgroup_mapping.fsp_tx_group ="default" 这项配置 数据库SQL ...

  5. python3.7版本pymongo3.6版本使用的一些细节(避免踩坑)

    网上的很多教程的pymongo版本很老,教程根本不适用 环境 mongo数据库版本 4.0 python==3.7 pymongo==3.6 连接到数据库代码: host_mongo=xxx port ...

  6. Cocos2d-x-4.0安装流程(踩坑后总结)

    一.环境配置 1.Python 2:在官网下载2.7版本即可 安装时选择如图选项添加环境变量. win+R->cmd调出命令框输入python,结果如下则配置成功. 2.cmake:在官网下载最 ...

  7. BigDeciml转String为0.00时避免踩坑

    场景 将BigDecimal转为String时,这样使用 totalPrice.toString(); 其中totalPrice为BigDecimal类型. 但是当totalPrice为0.00时却有 ...

  8. sumo安装(版本1.11.0)和实例(Windows)

    1.什么是sumo sumo是一种开源,微观,多模态的交通模拟仿真软件,它允许模拟由单个车辆组成的给定交通需求如何在给定的道路网络中移动.它纯粹是微观的:每辆车都是明确建模的,有自己的路线,并在网络独 ...

  9. 【译】用 Chrome 开发者工具以及 react 16 版本分析性能

    翻译自:debugging-react-performance-with-react-16-and-chrome-devtools github的地址 欢迎 star 文章主要介绍了用 Chrome ...

最新文章

  1. 【每日一念经】算法岗面经,一万字面试经验你确定不看?
  2. 北大组织“富豪俱乐部”,有何不可?
  3. python自带超参调优包
  4. UVA 1151 Buy or Build MST(最小生成树)
  5. Python ord()函数和chr()函数
  6. 在鹅厂做了14年开发
  7. python后端将svc文件数据读入数据库具体实现
  8. 反射获取list泛型_Android 从浅到懂使用反射机制
  9. 区块链去中心化分布式_为什么渐进式去中心化是区块链的最大希望
  10. IE或Chrome浏览器玩Xbox游戏能实现吗
  11. 苹果电脑强制结束任务,快捷键
  12. 代码质量度量标准_追求代码质量(2): 监视圈复杂度
  13. 求10000以内n的阶乘(openjudge 2923)
  14. 群论在计算机应用技术,群论在计算机全领域中应用.ppt
  15. Java数字抽奖游戏核心代码及分析
  16. 建筑工程计算机的应用,计算机对建筑工程的应用
  17. ISO14001认证用处有哪些?
  18. 给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。
  19. 废旧光盘手工小制作_变废为宝:废旧CD光盘制作纸巾盒
  20. 跟随郭霖学Volley

热门文章

  1. Bugku - 好多压缩包 - Writeup
  2. C++就要这样学7--C++的数据类型2.1
  3. 各位mm和gg互相关注,互踩呀
  4. cf欧服服务器位置,欧服cf辅助手把手处置惩罚怎样检察本身的ip处置
  5. Android DataBinding使用总结(五)结合MultiType展示多类型列表
  6. Android讯飞普通话测试,讯飞普通话模拟测试与学习系统
  7. 网站如何增加百度收录
  8. Hbuilder与夜神模拟器连接
  9. android遥控器控制播放器,android tv盒子播放器控制 监听上下左右键。
  10. 第5模块闯关CSS练习题