sunsonliu
sunsonliu
有两个方案 - **方案1**,用Cherry的纯预览模式 效果见[这里](https://tencent.github.io/cherry-markdown/examples/preview_only.html) demo对应代码在[这里](https://github.com/Tencent/cherry-markdown/blob/main/examples/preview_only.html) - **方案2**, 用Cherry的API获取html内容 api为:`cherryObject.getHtml()`。获取html后,把html展示到主页上 不过这种方式需要自行实现样式或者单独引入Cherry的样式文件
CherryEngine 似乎并没有支持,可以考虑 `const cherry = new Cherry()`,然后用 `cherry.engine.makeHtml(md)` 实现把md转成html的功能
可以用`cherry.previewer.options.enablePreviewerBubble = false`来关掉预览区域的所见即所得编辑能力哈。 至于为什么设置成“纯预览模式”还是可以编辑预览区内容,大概就是设计如此,具体可以见这个issue里的讨论哈:https://github.com/Tencent/cherry-markdown/issues/765
当然可以,这个组件本来就是可以随意更改的,通过 `callback.changeString2Pinyin`来配置拼音的回调接口就好了
 目前先把页面在移动端缩放的问题解决了(其实就是加个声明而已),可以在[这里体验](https://tencent.github.io/cherry-markdown/examples/h5.html)哈 对于按钮的移动端适配(就是宽度不够时,按钮自动换行),这个功能实现起来还有一定的工作量,需要排期搞搞,临时解决方案就是在移动端尽量的减少按钮数量。。。
赞~! 很专业,期待后续的更新~
竞品分析部分统一收录进这篇wiki里了哈:[竞品分析](https://github.com/Tencent/cherry-markdown/wiki/%E7%AB%9E%E5%93%81%E5%88%86%E6%9E%90)
似乎可以[绑定 afterChange 事件](https://github.com/Tencent/cherry-markdown/wiki/%E4%BA%8B%E4%BB%B6%26%E5%9B%9E%E8%B0%83#afterchange-%E7%BC%96%E8%BE%91%E5%8C%BA%E5%86%85%E5%AE%B9%E5%8F%98%E6%9B%B4),监听到变更时判断内容是否合法,如果不合法,则调用`cherry.editor.editor.options.readOnly = true;`把编辑器转成不可编辑状态,然后再给一个禁止输入的样式就好了(如下图)  不过,需要**注意**,这种交互是非常不合理的,检测到不合法-->禁用编辑,就会导致用户失去了修改内容的能力,这会降低用户体验。 推荐在用户提交时再判断用户输入,如果有问题在用户点击提交按钮时再给出提示。 如果只是希望**高亮**不合法的地方,让用户有意识的去修改,可以用[cherry.editor.editor.markText ](https://codemirror.net/5/doc/manual.html#markText)这个接口来实现
是只撤销不合法的部分么,那似乎直接用`cherry.getMarkdown()`获取全部的md内容,检测里面不合法的内容,把不合法内容去掉,再通过`cherry.setMarkdown(str)`更新到编辑器就好了吧
收到,感谢反馈,欢迎给我们提pr哈~