当前位置: 首页 > news >正文

建网站支持设备是什么意思今日新闻十大头条内容

建网站支持设备是什么意思,今日新闻十大头条内容,WordPress彻底清理插件,江门网站制作网站前言 我们现在来想这么一个场景,在掘金的文章管理页打开了一篇文章草稿,然后点击编辑,这个时候打开新标签页 A ,再点击一次编辑,打开了标签页 B 。 此时如果你在 A 编辑, B 是感知不到 A 的内容变动的&am…

前言

我们现在来想这么一个场景,在掘金的文章管理页打开了一篇文章草稿,然后点击编辑,这个时候打开新标签页 A ,再点击一次编辑,打开了标签页 B

此时如果你在 A 编辑, B 是感知不到 A 的内容变动的,因为没做协同编辑。此时再到 B 编辑,那么就可能导致A标签页的内容丢失。

别问我是怎么 YY 出来这种场景的,因为我就真的犯过这种错😓

所以可不可以做一种机制,再第二次点击编辑的时候,弹出一个提示,告诉你这个标签页已经打开过?或者说直接输入 url 的时候,能不能获取到相同的 urltab 页?

如何打开前检测

比如说我们有一个函数 openBoard ,它接受一个 id 参数,用来打开一个编辑页面:

export const openBoard = (id) => {const url = `${location.protocol}//${location.host}/board/${id}`;window.open(url);
};

我们来看一下 window.open 这个 api ,它其实是有返回值的:

一个 WindowProxy (en-US) 对象。只要符合同源策略安全要求,返回的引用就可用于访问新窗口的属性和方法。

我们可以实现一个 mapidkey ,打开的 windowvalue ,具体实现如下:

let openWindowMap = {};
export const openBoard = (id) => {const url = `${location.protocol}//${location.host}/board/${id}`;const openedWindow = openWindowMap[id];if (openedWindow && !openedWindow.closed) {// 如果窗口已存在且未关闭openedWindow.focus(); // 切换到已存在的窗口} else {const newWindow = window.open(url); // 打开一个新窗口openWindowMap[id] = newWindow;}
};

点击打开链接的时候判断一下这个链接是否被打开过,如果已经被打开过,且打开的 tab 页还存在,没有被关闭,则切换到已经存在的窗口

否则就打开一个新窗口,并维护这份关系。

效果如下

Kapture 2024-04-29 at 23.27.14.gif

最后

以上就是本文的全部内容,算是一个小知识点吧。五一假期将至,提前祝大家假期愉快~

http://www.r43.cn/news/564.html

相关文章:

  • django 做网站知名品牌营销策略
  • 便宜电商网站建设网络软文范例
  • 小熊代刷推广网站济南seo网络优化公司
  • 跨境电商网站建设开发公众号seo排名优化
  • 专门做有机食品的网站搜索引擎优化的目的是
  • 扬州网站建设外包重庆森林
  • 直接做那个视频网站seo外包杭州
  • 沈阳做网站的科技公司营销培训内容有哪些
  • java网站开发ssh实例好的网络推广平台
  • 网站浏览量怎么查看seo外链代发
  • 做选择网站app拉新项目
  • 免费行情网站推荐太原seo哪家好
  • 上海装修公司前十强排名榜韶关seo
  • wordpress地址(url)简述什么是seo及seo的作用
  • 太原怎样优化网站建设微信crm管理系统
  • 如何查看一个网站做的外链seo排名如何
  • 做电影网站用什么软件叫什么外链大全
  • 国贸做网站公司在线seo超级外链工具
  • 营利性网站备案企业为何选择网站推广外包?
  • css3动画效果网站最新域名查询ip
  • 有什么做详情页的参考网站bt磁力狗
  • 开发程序的过程主要步骤网页搜索优化seo
  • b2c的电子商务的网站建设重庆百度小额贷款有限公司
  • 做网站有哪些项目无锡网络推广平台
  • 别人做的网站爱站网注册人查询
  • 沈阳新民网站建设长尾关键词搜索网站
  • 做pc端网站服务google seo 优化
  • 汉网可以建设网站不seo排名怎么看
  • 计算机网络实验 做网站的乔拓云网站建设
  • 台州建站程序河北企业网站建设