-
;
1.报错信息did you register the component correctly? For recursive components, make sure to provide the "name" option. 2.解决方案,多次调用的组件使用import引入,可以让name不和父组件冲突 components:{ checkInDetail:()=>import(‘@/views/room/status/component/checkInDetail.vue’) }
- vue组件互相引用报错did you register the component correctly? For recursive components, make sure to provide the “name” option. 2023年3月1日
-
;
转移复杂度是徒劳的 前两天在 lobsters 上看到一篇高赞文章 https://ferd.ca/complexity-has-to-live-somewhere.html 大意就是复杂度是不灭的,只是在不同的部分之间做转移。当然这个很多写过 lib 的人都有类似的体会。要让 lib 的用户简单,写 lib 的人就要做得更复杂。 Complexity has to livesomewhere. If you are lucky, it lives in well-defined places. 文章的推论是要承认复杂度总是在那里的,要放在大家都知道的地方管理好。然而另外一个令人悲伤的消息是 Every abstraction is leaky。至少有两个导致侧漏的常见原因: 运行时的 cost 是藏不住的。两种写法可以完全一样,但是执行起来效率就是会有差异。例如 sql 写的时候可以完全忽略数据在磁盘上是怎么组织的,性能调优的时候绝对无法对你隐藏实际的数据分布在哪里。 故障的时候,必须要掀起引擎盖。很多工程师乐衷于在故障总结里分享自己是如何找到 linux kernel 或者硬件驱动的 bug 的。这就说明了,这种掀起引擎盖的难度足以让人为之骄傲。 所以不管你这东西再牛逼,出了故障之后要么是用户自己开盖子来修,然后骂你。要么是等你来修,你又…
- 复杂度是不灭的,只会转移,难道一切都是徒劳的吗? 2023年2月22日
-
;
标题就是你流量的百分之80,永远记住这句话。 没有一个好标题,你写的再好,别人也不会看。 打个不恰当的比方,标题就像你在咖啡厅看到的一位美女,你就坐在她的对面,虽然你不了解她,但你已经被她深深吸引, 而这位美女身上的香水味让你忍不住想靠近, 再打一个恰当的比方,标题就是一个讲了三分之一的故事,利用好这三分之一的吸引力,去让粉丝看完剩下的三分之二。 情感类内容首要职责:帮助宣泄 情感类内容的首要职责,就是帮助用户宣泄情绪,情感类标题的职责也同样在此。如果你研究过咪蒙、 HUGO等情感类大号的标题,你就会发现它们都在十分尽职地做着这件事情。 既然要宣泄情绪,标题通常需要观点鲜明,最好非黑即白。 1.用户本位 来看看下面这些阅读量爆表的标题: “孩子小,你不能让着点么?” “女孩子不要太辛苦?””你养我啊?” 职场女性:不敢嫁,不敢生 别逼婚了,我觉得没人配得上我! 这些标题的相同点是字数较少,语法简单,很多直接采用了对话体。这类标题的诀窍在于,完全站在用户的角度, 说他们的心里话,无需进行包装。优势在于,用户在一眼看到标题时,心中都会出现一些想@的人, 胸中立刻腾起一股攻击欲,而这种心理对点击率尤其是转发率非常有利。 2. 挑战常识+制造二元对立 常识是”克己复礼…
- 自媒体“标题党”的那些奇门绝技 2023年1月6日
-
;
电子游戏自诞生以来,一直遭受着外挂的困扰,给游戏公司造成了不可估量的损害。本文希望通过介绍外挂的相关知识,让对游戏安全感兴趣、有意愿了解游戏安全知识的同学对游戏安全有个基本的认识。 1. 外挂基本概念 1.1 外挂基本定义 未经官方许可的,可以达到游戏作弊效果的游戏工具。使用这种工具,能获得其他诚实玩家无法达到、或者在短期内得到其他诚实玩家必须通过长期运行游戏才能得到的游戏结果。满足上述效果的工具,称之为“外挂”。 1.2 外挂的影响 外挂作弊行为十分恶劣地影响了游戏行业的发展。 首先,外挂的使用损坏了游戏的公平性。在外挂等游戏中作弊的最直接害处便是影响了游戏的公平性并破坏诚实玩家的利益。其次,它会破坏游戏玩法,损害游戏质量,从而缩短游戏生命周期。通过使用外挂,外挂者可以特别容易获胜或获得更高分数,失去挑战将使游戏不那么可玩。此外,外挂的使用会影响服务器的服务质量并加速玩家的流失。第三,它破坏了游戏公司和玩家的经济利益。游戏外挂造成的犯罪也经常发生。游戏公司主要通过收取增值服务或在线游戏玩家付费来赚钱。外挂的使用破坏了网游的可玩趣味性,减少了游戏用户的在线时间和该类产品的生命周期,这极大地损害了出品公司的经济利益。 1.2 外挂的分类 现如今游戏外挂的种类繁多,面对这么多的外挂很有必要对外挂做一些分类,方便分析和总结外挂的技术和特点。 不更改…
- 浅谈外挂常识和如何防御 2022年12月28日
-
;
1.拦截请求 bpu www.baidu.com #拦截 bpu #取消拦截 拦截后提交参数可以在Inspectors中修改 2.拦截响应 bpafter www.baidu.com #拦截 bpafter #取消拦截 返回的数据也在Inspectors中修改,找到SyntaxView中Find & Replace修改替换 3.响应自动替换AutoResponder 确保勾选Enable automatic reaponses 和Unmatched requests passthrough 参考链接:https://blog.csdn.net/Liuyanan990830/article/details/128120537
- fiddler拦截请求和修改返回 2022年12月26日
-
;
1.打开命令行输入wsl 正常情况会提示子系统未安装 2.打开windows 功能,并选中相关功能 点击确认,电脑需要重启 3.打开microsoft store,搜索wsl,下载子系统 4.安装 命令行再次输入wsl进入,会有相关的提示信息,按照提示选择系统安装即可 备注:最近一次安装按照命令行操作提示出错了,这里继续上面的3步骤在microsoft store中安装一个ubuntu 5.使用 通过命令行输入wsl进入,或者快捷方式图标 备注,最近一次安装结果,快捷方式图标点击后似乎卡死了,命令行输入wsl即可进入
- win11中安装wsl 2022年12月21日
-
;
Listen To Port server { # Standard HTTP Protocol listen 80; # Standard HTTPS Protocol listen 443 ssl; # Listen on 80 using IPv6 listen [::]:80; # Listen only on using IPv6 listen [::]:80 ipv6only=on; } Access Logging server { # Relative or full path to log file access_log /path/to/file.log; # Turn ‘on’ or ‘off’ access_log on; } Domain Name server { # Listen to yourdomain.com server_name yourdomain.com; # Listen to multiple domains server_name yourdomain.com www.yourdomain.com; # Listen to all domains server_name *.yourdomain.com; # Listen to all top-level domains server_nam…
- nginx常用配置 2022年11月14日
-
;
1 技术人员 虽然 IT从业者的薪酬在各行业中算是处于领先地位,但内心的焦虑感并不会因为这些表面的高薪酬而得到缓解。时不时的,技术人员会因为看不懂自己付出的大量心血的意义而自我怀疑。就算不考虑是否有意义,这些花费的心血是否能够收到相匹配的报酬,或者是否能够得到相匹配的变现,也让技术人员心烦不已。明明付出了常人难以想象的努力和心血,但这条路的结局依旧要等同于常人么? 技术做得久了,就会让人越来越迷糊。一直忙于解决细节的问题,会习惯性地忽略做这个事情的意义和动机。虽然你可能做了很多的工作,也投入了大量的时间与精力在你的工作上,但跳出来看,你的功夫仅仅是花费在了任务的执行上。至于任务的内容、方向和动机,无一例外都是被动地由由公司分配、由老板指派。 为什么这个方向值得一做,这个方向是不是符合你自己的性格特点和成长方式,你既不不清楚,也无权参与讨论。 当这种方向性、意义、动机性的决策能力长期得不到训练,便会导致一个严重的问题:你无法看清楚承载你技术的大环境。你不知道技术市场的结构、优势以及“漏洞”在哪里。甚至,你根本就不知道还有一个叫做市场的需要你去考虑,不知道它会对你产生极其重要的影响。 2 商业套利者 做商业的人,通常对技术都不是太懂,特别是那些白手起家没怎么念过书的民营企业家。他们通常没有太高的教育背景,自然也不太可能对技术有什么深入的了解和体会…
- 做一名「技术掮客」去变现自己的技术 2022年11月9日
-
;
塔西佗陷阱,得名于古罗马时代的历史学家塔西佗,最初来自塔西佗所著的《塔西佗历史》。后被引申为一种社会现象,指当政府部门或某一组织失去公信力时,无论说真话还是假话,做好事还是坏事,都会被认为是说假话、做坏事。 塔西佗陷阱,是塔西佗在评价一位罗马皇帝时所说的话:“一旦皇帝成了人们憎恨的对象,他做的好事和坏事就同样会引起人们对他的厌恶。”
- 塔西佗陷阱 2022年11月9日
-
;
需求描述:手机号非必填,但是有输入的时候验证格式。 <el-form ref="form" :rules="rules" :model="form"> <el-form-item label="手机号" prop="mobile"> <el-input v-model="form.mobile" @input="inputMobile" clearable></el-input> </el-form-item> </el-form> let regMobile = /^1\d{10}$/ let validatorMobile = (rule, value, callback) => { if (!value) { callback() // 空值通过 } else if (regMobile.test(value)) { callback() } else { callback(new Error(‘手机号格式错误’)) } } form:{ mobile:” }, rules:{ mobile: [{ validator:…
- el-input要么为空要么验证格式 2022年10月23日
-
;
- BlenderGIS 2022年10月8日
-
;
每天,接近5万亿美元的货币在全球市场上交易。 这是一个在全球每周工作日持续24小时运行的市场——交易可以通过不同的机制发生,例如即期交易,远期交易,外汇掉期,货币掉期或使用其他类型的期权。 在这个极为流动和繁忙的市场中,是什么导致了变化?为什么各国之间的汇率不断变化? 下面这张图将带你了解六个可能影响货币汇率的主要因素。图片来自visualcapitalist,由WEEX·一起交易翻译整理。 来源:https://www.sohu.com/a/242222312_640079
- 影响汇率的六大因素 2022年9月26日
-
;
1.fetch formData let data = new FormData() data.append(‘client_key’,’111111′) data.append(‘client_secret’,’222222′) data.append(‘grant_type’,’client_credential’) fetch(‘/douyinOpen/oauth/client_token/’,{ method: ‘post’, body:data }) 备注:省略了content-type因为浏览器自动填入了正确的值 2.fetch json fetch("/douyinOpen/oauth/client_token/", { headers: { "content-type": "application/json" }, body: ‘{"client_key":"111111","client_secret":"222222","grant_type":"client_credential"}’, method: "POST" });…
- 抖音POI获取token,分别通过axios,fetch发送json和form-data 2022年8月31日
-
;
配置会以一个优先顺序进行合并。这个顺序是:在 lib/defaults.js 找到的库的默认值,然后是实例的 defaults 属性,最后是请求的 config 参数。后者将优先于前者。这里是一个例子: // 使用由库提供的配置的默认值来创建实例 // 此时超时配置的默认值是 `0` var instance = axios.create(); // 覆写库的超时默认值 // 现在,在超时前,所有请求都会等待 2.5 秒 instance.defaults.timeout = 2500; // 为已知需要花费很长时间的请求覆写超时设置 instance.get(‘/longRequest’, { timeout: 5000 }); 备注:不同版本可能配置不同,0.27.2版本中contentType为application/json,但是在0.18.1版本中contentType为application/json;charset=utf-8,多出了charset=utf-8,在抖音POI获取token的接口中,多出来的这部分就会导致请求报错。
- axios配置的优先顺序 2022年8月31日
-
;
<el-upload :headers="uploadHeaders" :data ="{hotelId:hotelID}"</el-upload> data(){ return { uploadHeaders:{Authorization: ‘bearer ‘ + getToken()} } }
- el-upload设置headers和参数 2022年7月26日
-
;
1.get let obj = { supplier_ext_id:” } this.$ajax.get(‘/douyinOpen/poi/supplier/query/’,{ params:obj, headers:{ "access-token":this.token } }) 2.post let obj = { supplier_ext_id:”, name:”, attributes:{}, poi_id:”, type:1, status:1 } this.$ajax.post(‘/douyinOpen/poi/supplier/sync/’,obj,{ headers:{ "access-token":this.token } }) 差异 get中headers位于第二个参数中和参数并列,post中位于第三个参数中
- axios设置headers值get和post的不同 2022年7月11日
-
;
1.依据现有table导出 import XLSX,{WorkSheet} from ‘xlsx’ let worksheet = XLSX.utils.table_to_sheet(document.getElementById(‘table’)) let workbook = XLSX.utils.book_new() XLSX.utils.book_append_sheet(workbook,worksheet,’数据报表1′) XLSX.writeFile(workbook,’数据报表2.xlsx’) 2.依据data数据导出 https://zhuanlan.zhihu.com/p/268835049 3.封装一下 import XLSX from ‘xlsx’ export function tableExport(tableId=’table’,sheetName=’导出数据’){ let worksheet = XLSX.utils.table_to_sheet(document.getElementById(tableId)) let workbook = XLSX.utils.book_new() XLSX.utils.book_append_sheet(workbook,worksheet,sheetName) XLSX…
- vue中导出table数据 2022年7月1日
-
;
一、什么是心跳检测 判断对方(设备,进程或其它网元)是否正常动行,一般采用定时发送简单的通讯包,如果在指定时间段内未收到对方响应,则判断对方已经当掉。用于检测TCP的异常断开。 基本原因是服务器端不能有效的判断客户端是否在线也就是说,服务器无法区分客户端是长时间在空闲,还是已经掉线的情况。所谓的心跳包就是客户端定时发送简单的信息给服务器端告诉它我还在而已。 代码就是每隔几分钟发送一个固定信息给服务端,服务端收到后回复一个固定信息。如果服务端几分钟内没有收到客户端信息则视客户端断开。比如有些通信软件长时间不使用,要想知道它的状态是在线还是离线就需要心跳包,定时发包收包。 发包方可以是客户也可以是服务端,看哪边实现方便合理。一般是客户端。服务器也可以定时轮询发心跳下去。 一般来说,出于效率的考虑,是由客户端主动向服务器端发包,而不是相反。 二、业务处理 客户端发送心跳包到服务器端,服务器会返回信息,双方可根据心跳包判断当前连接是否有效。服务器端检测心跳包超时则会断开连接,在socket已连接列表中移除该socket。
- socket心跳检测 2022年6月27日
-
;
ab -n 1000 -c 100 https://www.abc.com/ #1000个请求,100并发
- apache bench 2022年6月21日
-
;
1.popup组件中的overlay会失效 对比微信小程序后发现,微信小程序中子组件会包含于shadow-root下 2.getRelationNodes确失 影响到this.children无效,进而影响到radio-group,collapse等组件 3.createSelectorQuery确失 影响组件index-bar
- vant框架在抖音小程序中兼容处理 2022年6月10日
-
;
1.INSERT USE [DBSZM] GO INSERT INTO [dbo].[SZM_Function] ([Id],[MenuId],[FunctionName]) VALUES (1501,1164,’test’) GO 2.DELETE USE [YiBaiSZM] GO DELETE FROM [dbo].[SZM_Function] WHERE Id=1501 GO 3.UPDATE USE [DBSZM] GO UPDATE [dbo].[SZM_Function] SET [IsDeleted] = 0 WHERE Id=1500 GO 4.insert
- SQL Server 增删改查 2022年6月7日
-
;
1.app.json中的usingComponents不能用 全局组件引入不能使用,需要单独文件引入 2.nextTick
- 微信小程序迁移到抖音小程序兼容处理 2022年5月16日
-
;
babel降级为8.x npm install babel-eslint@8.2.2 –save
- vue报错Syntax Error: TypeError: token.type.endsWith is not a function 2022年4月21日
-
;
1.php代码部分 $auth = $_SERVER[‘HTTP_AUTHORIZATION’]; var_dump($auth); 此时可以看到打印为空 2.新建.htaccess文件 SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1 此时就可以获取到authorization 3.备注 在阿里云虚拟主机中,创建的.htaccess文件在文件刷新后会消失,代码配置效果依然有效,说明文件被隐藏了
- 云虚拟主机php读取authorization 2022年4月13日