avatar
Articles
292
Tags
211
Categories
0

karr's blog
Search

karr's blog

一文搞懂window.postMessage和window.parent.postMessage
Created2025-02-25
window.parent.postMessage 和 window.postMessage 都是用于在不同窗口或框架之间进行跨域消息传递的方法,但它们的使用场景和功能略有不同,下面为你详细介绍: 相同点 用途:两者都用于实现跨窗口、跨域之间的消息通信,通过这两个方法可以安全地在不同源的窗口或框架之间传递数据。 语法:调用语法基本一致,都接收三个参数,具体语法如下: 1targetWindow.postMessage(message, targetOrigin, [transfer]); - `message`:要传递的数据,可以是任意可序列化的数据类型,如字符串、对象等。 - `targetOrigin`:指定目标窗口的源(协议、域名和端口),可以使用 `"*"` 表示不限制源,但为了安全起见,建议指定具体的源。 - `transfer`(可选):是一个可选的 `Transferable` 对象数组,用于将所有权从发送窗口转移到接收窗口,例如 `MessagePort` 或 `ArrayBuffer`。 不同点1. 调用对象不同 **window.paren ...
传统完整的微服务系统架构图
Created2025-02-22
demo 1 demo 2
python re.search
Created2025-01-07
在re.search找到匹配项后,group(1)中的数字1代表匹配到的字符串中第一个捕获组(capturing group)的内容。 具体分析如下: 捕获组的概念:在正则表达式中,圆括号()定义了一个捕获组。捕获组会记住正则表达式中该部分匹配到的文本内容,以便后续使用。例如,在r"Retry in (\d+) seconds"这个正则表达式中,(\d+)就是一个捕获组。它会捕获Retry in和seconds之间的一个或多个数字字符。 group()方法的使用: group()方法用于获取匹配到的整个字符串。 group(n)(其中n为正整数)用于获取第n个捕获组匹配到的内容。这里的n从1开始计数。所以group(1)获取的就是第一个捕获组匹配到的内容,在这个例子中,就是Retry in和seconds之间的数字,比如10(如果res字符串中有Retry in 10 seconds这样的内容)。 如果正则表达式中有多个捕获组,group(2)会获取第二个捕获组的内容,以此类推。 在你的代码中,if ex_s:条件判断确保re.search找到了匹配项,然后 ...
state和status的区别
Created2025-01-02
英语单词state和status的区别 state:比较常用,各种状态都可以用它,但是它更着重于一种心理状态或者物理状态。Status:用在人的身上一般是其身份和地位,作“状态,情形”讲时,多指政治和商业。 state倾向于condition,是一种延续性的状态。status常用于描述一个过程中的某阶段(phase),类似于C语言中枚举型变量某一个固定的值,这个值属于一个已知的集合。比如淘宝买家问卖家“我的网购现在是什么状况?”这个问题的背景是讲话双方都清楚,交易状态有“买家选购”“买家已付款”“卖家已发货”“买家已签收”或者有“买家已投诉”等等状态。这些状态描述一件事情发展过程中的不同阶段。而且,这些阶段的先后顺序也是双方默许的。所以在这里可以问“What’s the status of my purchase?”,此处用state不太贴切,如果硬用上去从语感上可能听着别扭。 说物态变化用state再恰当不过。如果说一个物质的四种状态,可以说“solid state”,但如果你说“solid status”,第一,这两个词的组合不像是描述物态,更像是在说“确定的状况(solid产 ...
重新认识vue之事件阻止冒泡
Created2025-01-02
冒泡的表现近期用vue做了一个需求,大概是同一个区域,点击不同位置有不同的响应函数,还有个总的响应函数,好吧,如下图所示: 他们的DOM结构如下: 12345678<div v-for="(item, index) in listData" @click="handleClick3"> <el-col :span="grid"> <div @click="handleClick1"></div> </el-col> <el-col @click="handleClick2"> </el-col></div> 冒泡在这里的表现就是当用户点击图中事件1或事件2区域时,事件3也会执行。这是因为时间冒泡机制,导致点击’handleClick1’时’handleClick3’ 也会响应。在大部分的时候这都是不希望的, 同样我这里也 ...
Extraneous non-props attributes (id) were passed to component but could not be automatically inherited because component renders fragment or text root nodes.
Created2024-11-13
問題分析 1报错翻译无关的非道具属性(类)被传递给组件,但不能被自动继承,因为组件呈现片段或文本根节点。 存在的问题根据报错信息首先检查是否传递了没有解析的属性,可以检查一下你用的第三方的组件,或者自己编写的组件,是否 存在没有解析的属性,例如:class等属性 其次,还有一个重要原因是组件呈现片段或文本根节点,即组件暴露在了最外层。也就是vue内置或封装的组件、使用的第三方组件是否直接放在了template下。外面套一层div即可解决。 問題分析 2大致意思就是 ➡ 额外的非prop属性(xxx)已传递给组件,但由于你的组件渲染片段和文本根节点,无法自动继承。 当你的子组件中有多个根节点时,Vue使用透传Attributes机制也没有办法确定要在哪一个根节点继承属性时,就报出了上诉警告。 透传Attributes 关于什么是透传Attributes,官方说得已经很清楚了就是不好找,阅读起来也不算难。文章中的蓝字链接都可以跳转。给个链接 ➡透传 Attributes 解决办法 第一种情况,就是你有需要传输一个prop属性的数据给子组件,但是你在子组件中忘记用defineProp ...
Mac安装mysqlclient报错:Can not find valid pkg-config name
Created2024-11-06
错误信息12345678910111213141516171819202122232425262728293031323334353637383940414243Collecting mysqlclient Using cached mysqlclient-2.2.1.tar.gz (89 kB) Installing build dependencies ... done Getting requirements to build wheel ... error error: subprocess-exited-with-error × Getting requirements to build wheel did not run successfully. │ exit code: 1 ╰─> [24 lines of output] Trying pkg-config --exists mysqlclient Command 'pkg-config --exists mysqlclient' returned non ...
查看本机的出网ip地址
Created2024-10-25
实现原理请求一个公网服务,对方服务接收到的请求ip即为本机的出网ip地址。可以使用专门提供ip查询服务的网站,对方会将获取到的ip返回给你。 1234567curl ifconfig.mecurl icanhazip.comcurl curlmyip.comcurl ip.appspot.comcurl ipinfo.io/ipcurl ipecho.net/plaincurl www.trackip.net/i
selenium:如何解决打开网页加载时间过长问题
Created2024-10-23
1234567891011121314151617181920212223from selenium import webdriver driver = webdriver.Chrome() # 设置页面加载时间driver.set_page_load_timeout(5) start = time.time() try: driver.get(driver.get('https://www.baidu.com'))except: # 捕获timeout异常 driver.execute_script('window.stop()') # 执行Javascript来停止页面加载 window.stop() end = time.time()# 页面加载所需时间print(end-start) el = driver.find_element("name", value='wd')#对元素输入文本el.send_ ...
pip-compile & requirements.in
Created2024-10-08
制作 requirements.in123456789101112131415fastapi~=0.111.0starlette~=0.37.2SQLAlchemy~=2.0.29pydantic~=1.9.0uvicorn~=0.29.0PyMySQL~=1.0.3mysql-connector-python~=8.3.0requests~=2.31.0sonyflake-py~=1.3.0retrying~=1.3.4python-dateutil~=2.8.2redis~=5.0.4pip-tools~=7.4.1pytest~=8.2.1python-jose~=3.3.0 安装 pip-tools1pip install pip-tools 生成 requirements.txt1pip-compile --strip-extras requirements.in
123…30
avatar
karr
世界那么大,我想去看看。
Articles
292
Tags
211
Categories
0
gitee
Announcement
This is my Blog
Recent Post
python 使用线程池来同时执行多个函数2025-07-23
获取 A 股全部历史数据保存到本地2025-07-22
What are AI Agents?2025-07-21
Hello, 极简AES!2025-07-20
Git报错: Failed to connect to github.com port 443 解决方案2025-03-30
Tags
memory_profiler mysqlclient react-error utils OTP io多路复用 importlib postMessage 字典 救猫咪 数据库 text npm 协程 react-warning git-lfs Artificial Intelligence vue-router Android 前端 变现 Homebrew commit message 重复数据 动态口令 Next-key lock stopPropagation ONLY_FULL_GROUP_BY react-fragment-error-message 代码 口罩检测系统 react-props-warning-message 远程仓库 FastAPI eslint es6 GROUP BY 搜索引擎 md5 react-text-error-message
Archives
  • July 20254
  • March 20256
  • February 20252
  • January 20253
  • November 20242
  • October 20243
  • September 20247
  • August 202410
Info
Article :
292
UV :
PV :
Last Update :
©2024 - 2025 By karr
Framework Hexo|Theme Butterfly
Search
Loading the Database