Alien ZHOU

Results 24 comments of Alien ZHOU

> 已经搞定了!是vue的v-html的原因,多谢关注 祝您生活愉快 > […](#) > 在 2019年10月29日,16:45,Alien ZHOU ***@***.***> 写道: 我是用vue做的, 使用了您分享的库, 很感谢无私分享, 现遇到一个问题, 页面的文章和高亮的节点, 都是从服务端直接拉取的内容, 就存在切换文章和增删改查高亮文本节点的情况, 发现文章无法动态切换,请问如何处理? 补充一下,在new Highlighter()对象生成之前, 文章切换是正常的 建议贴一下控制台报错信息,可能是脚本报错导致其他功能无法执行。 — You are receiving this because you...

> 大佬 请教下 localvars这个钩子到底干啥的? 我看了半天没看明白 正好之前用到过这个钩子,可以试着解释一下。 localVars 是在代码文件生成阶段调用的,你可以在localVars 这个钩子上注册自己的方法,生成自定义的代码片段,webpack 会把它写到生成的文件里。 [webpack里会顺序调用`localVars` `require` `requireExtensions`](https://github.com/webpack/webpack/blob/v4.34.0/lib/MainTemplate.js#L395-L404) ```javascript ... buf.push(this.hooks.localVars.call("", chunk, hash)); buf.push(""); buf.push("// The require function"); buf.push(`function ${this.requireFn}(moduleId) {`); buf.push(Template.indent(this.hooks.require.call("", chunk, hash))); buf.push("}");...

> 好的,谢谢,请问侧边笔记栏,api是哪块?没看到呢? 感谢交流反馈。 左侧笔记栏暂时**不包含**在该仓库中,由于是线上产品,这部分还不开源。 如果需要批注功能的话可以自己开发,然后适配上高亮功能。 或者等空一点(近期事情稍多)我也可以在 example 里加一个包含批注(笔记)的简单样例。批注功能的编码复杂度不高,主要是不同产品交互需求会带来一定复杂度。

> fromStore 还原时,当原内容删除了部分,没有完全删除,这时会把后面所有的元素加上高亮问题,这个怎么解决 @alienzhou 可以尝试 @Neo-Chaos 提到的方式。 不过主要的问题还是因为原文档修改了,导致按之前记录数据寻找位置时,可能出现一些预期外错误情况。目前的持久化算法对这种情况的支持还不太好。

非常感谢你关注到 web-highlighter 这个库。 关于浏览器插件,近期内可能还没有计划。 web-highlighter 作为文本高亮的核心库,主要解决了文本高亮的展示、持久化与还原能力(同时提供一些扩展 API),而如果要提供一个较完整的浏览器标注插件,可能还需要补全一些功能,例如: - 支持添加批注功能 - 高亮内容的操作 - 数据的存储以及管理(可能还涉及导出或同步) - 舒适的 UI 设计与交互 Readme 里有一个实际产品的例子 ![](https://user-images.githubusercontent.com/9822789/64678049-632e8500-d4ab-11e9-99d6-f960bc90d17b.gif) 其中文本高亮部分就是在 web-highlighter 上实现。近期因为精力原因,暂时不准备再重新开发一个类似的笔记产品了。当然,非常欢迎你在 web-highlighter 基础上定制你自己的插件!🙂

确实,页面结构变动目前很容易导致上次做的高亮区域无法还原。 前面提到的缓冲逻辑是否能很好解决这个问题可能有待商榷: - 一个是,页面结构变化可能导致根据标记找到的dom节点和原本位置相差极大。 - 另一个是,担心一些探测方法会在高亮还原出错时,还原结果与使用方预期不符,造成使用上的困惑。 --- 此外,一种可能的解决方式是放弃目前的还原方法,通过纯文本内容匹配来决定高亮的位置。

有可以复现的操作路径或者 demo 么?

希望能再详细描述一下。提供一个可复现的html和具体的选中操作步骤,感谢😊

需要提供更多的报错信息,或者可复现的 demo