应无所住,而生其心
排名
1
文章
872
粉丝
112
评论
163
net core webapi post传递参数
庸人 : 确实坑哈,我也是下班好了好几次,发现后台传递对象是可以的,但...
百度编辑器自定义模板
庸人 : 我建议换个编辑器,因为现在百度富文本已经停止维护了,用tinymec...
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术

百度编辑器本地缓存

6625人阅读 2018/12/14 11:00 总访问:5413945 评论:0 收藏:0 手机
分类: 编辑器

百度编辑器默认有本地缓存。存储在localstorage中。

可以防止用户在写文章的时候意外关闭后不至于之前写的内容会丢失


读取本地保存的缓存

  1. var val = localStorage.getItem("ueditor_preference");
  2. alert(val);

这样是读取的所有内容,比如你在很多页面上都报错了缓存,想要读取单独的取,

需要当前url+container-drafts-data

因为他的格式就是这样的:

我们可以通过location.href取出来当前页面,然后把://等替换成_连接即可

代码如下:

  1. //取出来百度编辑器全部缓存
  2. var val = localStorage.getItem("ueditor_preference");
  3. //把缓存json字符串转化成json对象
  4. var jsonobj = JSON.parse(val);
  5. console.log(jsonobj);
  6. //取出当前页面的缓存信息
  7. //alert(location.href.replace("://","_").replace(/[/:]/g, "_"));
  8. var baiurl = location.href.replace("://""_").replace(/[/:]/g"_") + "container-drafts-data";//构建对应页面的格式
  9. console.log(jsonobj[baiurl]);

这里解释一下:location.href.replace("://", "_").replace(/[/:]/g, "_")

前面的是先替换://为_

后面的replace(/[/:]/g, "_"):是把所有的/与:替换成_, 相当于中间就是需要替换的内容[/:],然后/g表示替换字符串中的所有


大家可以看到我们把当前页面的数据已经正确的读取到了:

注意外网使用的时候:域名中间的点也要替换成:_

  1.     var baiurl = location.href.replace("://""_").replace(/[/:.]/g"_") + "container-drafts-data";//构建对应页面的格式

正则表达式里边多加一个.就好了



把缓存内容添加到百度编辑器里边

  1. //百度编辑器加载完成读取本地缓存的内容
  2. ue.ready(function ({
  3.         ue.execCommand('drafts');
  4. });


删除本地保存的缓存

当用户保存后就可以删除本地的缓存,不然写新文章的时候也出现上一次的内容用户体验就不太好了

  1. localStorage.removeItem("ueditor_preference");


欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)

评价

Windows下redis的主从复制

Redis拥有非常强大的主从复制功能,而且还支持一个master可以拥有多个slave,而一个slave又可以拥有多个slave,从而形成强...

redis常用命令

启动服务命令 redis-server.exe redis.windows.conf 连接命令 redis-cli.exe -h ip地址 -p 6379 连接本地...

redis基础安装操作-windows版

一、下载 redis官方没有提供windows版本,需要从微软的git下载releases版二、安装,启动1.解压出来 启动服务 可能会双击会...

redis常用配置

配置主从节点slaveof127.0.0.16379 可能会遇到持久化错误:Error reply to PING from master: ‘-MISCONF Redis is configu...

redis常见问题

配置文件配置密码后启动无效的问题 那是因为redis服务双击启动没法作用上配置文件,你可以在配置在启动命令的时候指定一下...

redis中主从、哨兵和集群这三个有什么区别

主从模式:备份数据、负载均衡,一个Master可以有多个Slaves。sentinel(哨兵)发现master挂了后,就会从slave中重新选举一个...

StackExchange.redis操作redis(net core支持)

官方git开源地址https://github.com/StackExchange/StackExchange.Redis官方文档在docs里边都是官方的文档通过nuget命令下...

Service-stack.redis配置连接池与读写分离(处理并发相关等)

配置连接池与读写分类 //写节点(主节点) List<string>writes=newList<string>(); writes.Add("123456a...

Service-stack.redis操作redis 并发相关问题

1:不要循环去创建对象,循环去访问redis的时候要特别注意,应该传一个集合进去处理,而不是循环去处理2:要注意释放对象,使...

ServiceStack.redis操作redis设置数据过期问题

添加一个key并设置过期时间(例如这个设置2分10秒后过期)TimeSpants=newTimeSpan(0,2,10); byte[]intbit=BitConverter.GetB...

ServiceStack.redis操作redis配置单例模式

我携漫天星辰以赠你,仍觉漫天星辰不如你。单利的应该是连接池而不应该是redis对象。如果每次操作都是一个redis对象是会有...

redis常用查询命令

hash相关查询hash的所有key:hkey + hash名称查询hash的所有某个key:hget + hash名称+ key名称List相关根据key查询list :l...

ASP.NET 使用redis实现单点登录

Session介绍 session是用来记录客户端用户信息的,在客户端第一次向服务器发起请求的时候服务器会生成一个sessionid并返回...

C ServiceStack.redis操作redis_基本键值对

Redis的基本数据类型:基本的键值对List集合Set集合有序Set集合Hash表ServiceStack.Redis操作基本键值对:staticvoidMain(s...

C ServiceStack.redis操作redis_List

redis的内部实现是使用的链表实现的ServiceStack.Redis操作Redis List的增删改查staticvoidMain(string[]args) { //链接r...