2021-08-20

21 篇热帖

1. 坐在我旁边的同事一直抖腿

余光中他的腿不停的晃动令我很不舒服,我有意侧身工作,但是也不能一直侧着身子,我该怎么去委婉给他说? 还有这家伙整天除了摸鱼就是摸鱼时不时就是哈哈笑几声。。。。

2. harmony os 大家用的感觉怎么样
4. go 程序员, 第二门语言选择 c++ 还是 rust?
gopher, 会一些 python 。第二门语言在学一个后端语言,还是学前端搞全栈
5. Windows 一分钟使用 C++ 发送 Http 请求
有人说 c++ 发 http 请求麻烦,我不太认同,我认为一分钟内能搞定的事情,无论如何也谈不上“麻烦”
为了帮助后来人,方便以后英文不太好,常使用中文搜索的同学找到答案,我单独发到这里

1. VS 新建一个 Cpp console 工程,工程右键 -> Manage nuget packager
2. 搜索 cpprestsdk,并 点击 install

3. 复制以下代码替换 main.cpp ,然后 F5

#include <iostream>
#include <cpprest/http_client.h>
int main()
{
web::http::client::http_client client(U("https://postman-echo.com/get?a=b"));
auto rsp = client.request(web::http::methods::GET).get();
auto body = rsp.extract_string().get();
std::wcout << rsp.status_code() << "\n" << body << std::endl;
}


全程录屏:

SEO Area:
C++ 发 http 请求
Cpp 发 http 请求
怎么用 Cpp 发 http 请求
http 请求 cpp
http 请求 c++
6. 原来美团如此牛逼~生活并不像表面那么宁静而美好

昨天点外卖时候,续费了一期会员,生效时间 8 月 21 号
外卖到了,很难吃,所以想了一想,平时很少点外卖,于是申请了会员退款
联系客服,客服说会员还没生效,可以退款,但是只能退到余额,可以用来消费,也可以免费提现到储蓄卡
因为我是用 wx 选择信用卡支付的,所以我要求退款原路退回,客服说不支持,升级专员处理,24 小时回复
专员回复倒是很快,答案也很简明扼要:平台规定退款到余额,你可以提现,但是需要绑定储蓄卡,也可以直接用来消费;如果坚持要求原路返回,很抱歉,无法满足;我们会保留该方案,等您想明白了以后,可以直接提现或者消费(反正就给你退到余额,爱要不要)
这是啥行为?强制消费,不想消费?拿你的资料换你的钱,还是顺带着套了一把信用卡

实在气不过,12315 投诉一波,结果有了意外发现
多年前注册的 12315 账号不见了,找回密码时候说账号信息错误
那我重新注册可以吧,唉,死活收不到短信验证码
那我打电话,唉,北京 12315(快三注册地)循环播放 music 舒缓身心长达半个小时

至此,我的心情已经平复了,随他去吧

7. 我为了创业而出道成为偶像了,求一键三连
Live2D 创业真人秀,直播 + 录制视频。

出道视频点这里: https://www.bilibili.com/video/BV17341167U3

如果你想学习前后端,产品设计,精益创业,敏捷开发之类的课题也可以关注一下。

有什么想法或者建议也欢迎讨论,感谢

YouTube 视频还没上传,因为我想再录一个英文版的,感兴趣可以先关注一下频道 https://youtube.com/channel/UCK0CYyzrPwR1I-5gZ1BDknQ
8. 关于拖着不给办离职的问题
手里有个新的 offer 是 9 月 13 日入职,周二和上层提了离职,以需要先完成上线准备工作为由,拖到今天也没给个确定日期;还一直说需要找老板谈,有可能要签署竞业协议之类的,搞得很恶心。
大佬们有没有好的谈判策略求教,谢谢!
9. 你们现在买手机是买新 iPhone 还是买二手?还是买上一代新机?

以前自己花钱,1 万块加 apple care 买个 iPhone X 不带心疼的。

现在觉得买个二手才不会心痛。

想知道大家开始还房贷养家后,手机的消费理念都变了么?

买二手哪里价低风险低呢?

10. 网站上线快 1 年了,注册用户都不到 200 人,难受呀!

想做一个好看的小网站,于是做了个聚合搜索网站,也相当于导航吧,做的还可以呀,可以根据网站名搜索网站,挺方便的呀,就是没人用呀。

毒蘑菇搜索

支持 shift + 字母键 一键直达

支持添加自定义网站,自定义搜索引擎,用户有个性化导航 导航

可以调整主页布局,整体大小

能有的都有了,还挺好看的你别说。

毒蘑菇搜索

希望能再多换几个友链。

11. OK JSON - 格式化和查看 JSON 的原生 Mac 应用

最近做了一个新 App,一个 Mac 上的 JSON 格式化工具,可以方便地格式化多个来源的 JSON 字符串,包括剪贴板、文件、URL 等,甚至还可以通过 cURL 直接执行请求。格式化后配以语法高亮在树形视图中查看节点。

应用内置多达 15 个主题,都适配了深色模式。

其他功能还有即时同步的编辑器、多个第三方效率工具的集成( Alfred, LaunchBar, RayCast)等。

感兴趣的朋友可以看看,已在 App Store 上架,免费下载后可试用 14 天,支持 macOS Big Sur 11.0 。

官网:OK JSON: 格式化和查看 JSON 的原生 Mac 应用

App Store: Mac App Store 上的“OK JSON”

12. 关于黑神话悟空的最新演示视频,一些个人观点

首先当然是国产 3A 的长足进步,值得大家欢庆了,激动之余分享几点个人观点,说的不一定对,大家轻喷。

1 、不知道大家注意到没有,我个人非常惊喜的一个点是,演示的第一个黑猴 boss 所使用的武器,设计上带有明显的来自于日式长刀的元素(关于弯刀是源自唐刀还是日本改良有争议,但一般认为唐刀中直刀占大多数),而后团队为 boss 设计了一个求饶后反而偷袭的动作,不知道你们怎么想,我看到的这里的时候非常惊喜。这个动作并不一定代表什么含义,但我很喜欢这种有自己想法的团队,无论有意无意,国产游戏也需要有潜移默化中国产价值观的输出。

2 、然后关于动作的打击感,由于动作本身做的是扎实系,通过快慢节奏调节,非常魂 like (而不是采用一些动作游戏的吃饭应快打+炫光的方式),在这点基础上,我觉得套在棒子旁边的一圈类似于空气扭曲的特效就显得很突兀,因为实际上这个特效扭曲了真实击打效果的击打点,让打击感大打折扣,总之感觉这个特效是跟这套慢动作的动作逻辑不太相合的一个东西(实际上仔细观察一些打击和反馈位置也确实调教的不太准,不知道是不是出于技术原因使用这种方式遮挡)。而且在游戏内在一致性层面,个人感觉故事上比较难解释这么一个“运动慢,但就是会产生运动模糊”的效果,总之个人感觉是不太好。

3 、还是动作调教部分,第一个 boss 战中可以看到后期明显有两次受身,被打击的反馈做的挺一般的,没有被打到的厚重感。包括仔细观察雪地场景的一次互动做的很好,但踩过一次之后就无后续的物理运动,导致过程中很多踩到雪地上没有应有的反馈。可以理解因为 demo 阶段这里不是调整重点,希望这些小瑕疵后续版本中都持续优化。

4 、说上面两点是因为,有关注新游戏发售的朋友应该都知道有一些动作游戏,做出来因为一些细微的手感调教的不好,导致整体做的非常独立游戏的廉价感,比如最近发的生化变种是属于细节调的比较粗糙的,还有之前有一些 soul like 比如致命躯壳则是因为 boss 设计的水平和真正的魂差了不少。。。总之是用 3A 的标准来要求的话动作游戏的基准很高,因为看 demo 真的很欣喜,所以希望能精益求精所以拿出来讲讲。

5 、如果不是我孤陋寡闻,这款游戏可能是第一次在动作游戏里能玩到真正的打中国龙(只狼里那个不算真正的 boss 战,大圣归来忽略不计),同样令人很惊喜。这类蛇形动物调教的难度应该是相当大的,动捕里也一样。但还是一样地关注到一些打头无反馈的问题。

6 、以下是纯粹的暴论:关于故事性,大家都知道原作西游记本身是个很值得商榷的作品,虽然表面上看上去崇佛,实际上却见惯了打了小的来了老的的世俗,以及越近西天妖魔鬼怪越多这些种种都挺让人细思恐极的。可以看得出团队想基于这套世界观展开故事,而且 demo 中看到对原作元素也运用的挺好的,比如可伸长的金箍棒,还有画一个圈妖魔鬼怪勿进的这些元素都挺好。我的个人感觉是是否可以再进一步进行一些演绎,因为各类孙悟空形象到今年为止已经见了太多了,日本那边有很多恶搞式的解读,还有周星驰的浪子式的形象等等,个人建议应该做出一些不一样的形象,比如孙悟空爱喝酒就挺好,侠客式的孙悟空我们没见过。从宣传片结尾引用闫肃老先生写的“斗罢艰险再出发”这个 logo 来看,因为这句话的出处还是出于一种对西游记比较正能量的解读,与上述背景其实略有矛盾,不知道这是否代表着整个故事设计上仍在犹豫而没有一个定案(或是单纯出于对于现实世界团队人员变更的表达,不得而知)。

啰嗦了半天没有重点,总之还是希望游戏越来越好,首发肯定入!

13. 各位大佬,我的 16 寸 Macbook Pro 外接显示器发热严重,有什么好的方法解决这个问题?
14. 快递费用区别定价 自取和放快递柜定价不同会不会更好?

通过丰巢寄快递的时候, 发现有个送快递柜可以便宜 2 元,

而目前不管是买的什么东西除了顺丰基本都默认快递柜 /驿站了, 快递员也只感觉送上门是多余的任务,浪费精力,不乐意完成.

这样的确提高了快递员的派送效率, 但是也造成了矛盾, 有些人就想让送上门(我个人喜欢放快递柜). 这就造成了部分人和快递员的矛盾, 所以定价分开似乎是更好的解决方法, 快递员就有责任送上门了.

用户呢, 想上门直接多加钱 我觉得理所应当, 因为现在快递费用这么便宜, 很大程度上得益于集中派送.

这样我觉得比目前模糊的送上门权利靠谱.

15. 长变量/名称大家一般怎么命名

名称规范都需要见名知意,但是名称很长的时候一般怎么命名? 先说我,根据英译取单词开头 1-3 组合完成

16. 笔记本电脑如何在不开盖子的情况下开机?
公司新买了一台笔记本电脑,华硕天选 2 。
外接有键盘、鼠标、显示器,笔记本就当一主机用。
每次开机时,要开盖子按开关,显的麻烦。
有没有办法,不开盖子,加一个类似 usb 之类的开关,按一下就开机了,这样可以把笔记本丢到桌子里面或办公桌的角落里。
17. 大家用过深信服的虚拟桌面云吗?公司刚开始用里面不能连接外网。问下我们 Python 依赖的包怎么下载?
难道没有依赖包都收到导入进去安装吗
18. 离个职,有那么麻烦么?!

关于各种离职纠结(还谈不上纠纷,就是当事人的纠结)的贴子屡见不鲜,想知道离职有这么麻烦么?

工作经历中我也有过离职被卡的情况,创业公司(某知名大公司旗下的),从租办公室、弱电装修我就跟着干了。
结果后来领导班子(主要是 CEO 和一个 VP )不行,见识、格局什么的全不在线上,公司 CxO 级别的纷纷闪人,我一看,也跟着走吧,发了个邮件给 VP 和 CEO (当时我的汇报对象已经是这个 VP 了),等了一天,VP 没回复,然后我就去他办公室了。

 - S 总,你好。
 - 你的邮件我收到了,你看……
 - 噢,我不是来申请离职的。
( S 总面部表情松下来了)
 - 我是通知您的。我刚问了 HR,包括年假和调休,我还有 29 天多,就按 29 天算吧,邮件我昨天发给您的,那我从今天开始就正式休假了。

于是,就这样完成离职了。

到了发薪日,没收到工资,问 HR 的同事,说“你问 S 总吧”。
侧面打听了一下,某知名大公司的领导听说了这个公司的变故,要安排人(后来知道是 Z )过去调研情况,然后在 Z 过去的那天,我也过去讨薪了。S 说这个月我一直在休假,所以没工资,我说我的假是年假加调休,都是全薪的。
然后找了张 S 办公室门口的桌子就坐桌子上了(为什么不坐椅子?坐椅子上谁能看得到你啊,谁管你啊。。。)。如我所料,Z 开完会要去 S 办公室,问我是干吗的,我说“讨薪的”,S 走在 Z 旁边,说“什么讨薪,说这么难听”……当然,次日就把我工资全额发给我了。

19. Vue3 hooks 的问题

1 、因为很多页面都需要用到表格,所以我抽取了表格的逻辑到一个叫 useCommonTable.ts 的文件中,大概如下:

// ...省略无关代码
export default function (url) {
   const isLoading = ref(false)
   const tableData = ref([])
   const commonTableConfig = reactive({
     // ...
   })
   
   const getTableData = () => {
   	 // ...
   }
   
   return {
      isLoading,
      tableData,
      commonTableConfig,
      getTableData
   }
}

在使用的时候,一般就是如下:

setup() {
  const {
    isLoading,
    tableData,
    commonTableConfig,
    getTableData
  } = useCommonTable('url')
  
  return {
    isLoading,
    tableData,
    commonTableConfig,
    getTableData
  }
}

但是好死不死,突然有一个页面有 2 个表格,然后逻辑也一样,那我解构就重名了

setup() {
  // 表格 1
  const {
    isLoading,
    tableData,
    commonTableConfig,
    getTableData
  } = useCommonTable('url1')
  // 表格 2
  const {
    isLoading,
    tableData,
    commonTableConfig,
    getTableData
  } = useCommonTable('url2')
  
  return {
    isLoading,
    tableData,
    commonTableConfig,
    getTableData
  }
}

所以这种情况应该如何使用啊?我目前是

setup() {
  // 表格 1
  const useTable1 = useCommonTable('url1')
  // 表格 2
  const useTable2= useCommonTable('url2')
  
  return {
    isLoading1: useTable1.isLoading,
    tableData1: useTable1.tableData,
    commonTableConfig :useTable1.commonTableConfig,
    getTableData1: useTable1.getTableData,
    isLoading2: useTable2.isLoading,
    tableData2: useTable2.tableData,
    commonTableConfig :useTable1.commonTableConfig,
    getTableData2: useTable2.getTableData
  }
}

感觉这种导入方式有点啰里八嗦的。。。不知道各位大神是如何做的?能否教教小弟。。。

2 、关于 hooks 之间的调用

// hook1.ts
export default function() {
  const getStudentDetails = (studentId) => {
    // ...
  }
}

// hook2.ts
export default function() {
  const getClassDetails = async () => {
     const studentIds = await self.$axios.get('...')
     // 这里希望调用 hook1.ts 中的方法
     // getStudentDetails(studentIds[0])
  }
}

如果使用 callback 方式,在 hook2.ts 中传入的话,会导致 setup 中的引入必须有先后关系:

setup() {
  const {getStudentDetails} = useHook1()
  const {getClassDetails} = useHook2(getStudentDetails)
  
  return {
    // ...
  }
}

大哥们能教教小弟吗?新手勿喷,感谢大家!

20. requests 的 post 中的 data 如何按顺序进行封装?

假设 data 如下 data={

a = '11',

b = '22',

c = 某个变量,

d = 另一个变量,

e = '33'

} 然后我 requests.post 理论来说 他 data 的顺序应该是 a=11&b=22.....依次按顺序,但是我测试抓包发现,他顺序是乱的,特别是变量,他可能会封装成 a=11&c=某个变量&d=另一个变量值&b=22..... 我想让他就按照从上往下的顺序进行封装起来,百度了下也没人问这类的问题,请问有解吗?

21. windows installer 为什么一直给我弹窗啊?如何才能关闭?

名称为 windows installer 的弹窗

本人已尝试如下方法去关闭:

  1. 关闭 windows installer 的 windows 服务,无用
  2. 找到 windows installer 关联的 windows 服务并关闭,也无用

烦死了,关闭了弹窗,过一分钟就会再弹,大家有什么办法可以解决吗?

实在不行我就只能把这个弹窗对应的 exe 执行文件替换了。。但是又担心有什么问题,这个文件路径如下:

C:\Windows\SysWOW64\msiexec

wiki 说这个玩意儿还挺重要的,不太好操作,头大。

描述一下这个弹窗,就是一个正常的 windows 弹窗,内部存在一个 textview,其中的消息如下:

Windows ® Installer. V 5.0.19041.1

msiexec /Option <Required Parameter> [Optional Parameter]

安装选项
 </package | /i> <Product.msi>
 安装或配置产品
 /a <Product.msi>
 管理安装 - 在网络上安装产品
 /j<u|m> <Product.msi> [/t <Transform List>] [/g <Language ID>]
 公布产品 - m 公布到所有用户,u 公布到当前用户
 </uninstall | /x> <Product.msi | ProductCode>
 卸载产品
显示选项
 /quiet
 安静模式,无用户交互
 /passive
 无人参与模式 - 只显示进度栏
 /q[n|b|r|f]
 设置用户界面级别
 n - 无用户界面
 b - 基本界面
 r - 精简界面
 f - 完整界面(默认值)
 /help
 帮助信息
重新启动选项
 /norestart
 安装完成后不重新启动
 /promptrestart
 必要时提示用户重新启动
 /forcerestart
 安装后始终重新启动计算机
日志选项
 /l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] <LogFile>
 i - 状态消息
 w - 非致命警告
 e - 所有错误消息
 a - 操作的启动
 r - 操作特定记录
 u - 用户请求
 c - 初始用户界面参数
 m - 内存不足或致命退出信息
 o - 磁盘空间不足消息
 p - 终端属性
 v - 详细输出
 x - 额外调试信息
 + - 扩展到现有日志文件
 ! - 每一行刷新到日志
 * - 记录所有信息,除了 v 和 x 选项
 /log <LogFile>
 与 /l* <LogFile> 相同
更新选项
 /update <Update1.msp>[;Update2.msp]
 应用更新
 /uninstall <PatchCodeGuid>[;Update2.msp] /package <Product.msi | ProductCode>
 删除产品的更新
修复选项
 /f[p|e|c|m|s|o|d|a|u|v] <Product.msi | ProductCode>
 修复产品
 p - 仅当文件丢失时
 o - 如果文件丢失或安装了更旧的版本(默认值)
 e - 如果文件丢失或安装了相同或更旧的版本
 d - 如果文件丢失或安装了不同版本
 c - 如果文件丢失或较验和与计算的值不匹配
 a - 强制重新安装所有文件
 u - 所有必要的用户特定注册表项(默认值)
 m - 所有必要的计算机特定注册表项(默认值)
 s - 所有现有的快捷键方式(默认值)
 v - 从源运行并重新缓存本地安装包
设置公共属性
 [PROPERTY=PropertyValue]

请查阅 Windows (R) Installer SDK 获得有关
命令行语法的其他文档。

版权所有 (C) Microsoft Corporation. 保留所有权利。
此软件的部分内容系基于 Independent JPEG Group 的工作。

大家有遇到过吗。。