大象笔记

知者行之始,行者知之成

随机生成小红书账号小清新介绍的微信小程序

我是一枚小萌新,第一次使用小红书,发现城里人的账号介绍都搞得清新脱俗,不但各个都是斜杠青年,而且每行介绍前面都缀上了Emoji表情。这可太时尚了,于是我想何不开发一个微信小工具,让自己也变得 city 呢 🥺 晚上洗脚的同时,开发完成,效果如图。随机了三次: 虽然第一版比较粗糙,但是基本功能还是满足我的需求。随手把我的小红书账号的个人介绍装饰了一下,嘿嘿,几个复制粘贴,瞬间变得连我妈都认不出我来😘 效果如下: 体验方式: 长按识别,或者扫描下方小程序码,即可 微信中搜索“大象计算器”,进入后,在首页底部找到“随机社交账号介绍”功能。即可使用。 后续准备接入 DeepSeek 之类 ...

阅读全文...

react usestate set 数据,要等下一次打开界面才能生效

bug 现象 在 Antd Pro 的 React 项目中,列表页,编辑一条记录。 为什么我点击了编辑按钮,弹窗显示的还是上一次打开的数据。 问题分析 这是一个 React 状态管理的问题。问题出在 CreateForm 组件的使用方式上。 当前的问题: 点击编辑按钮时,虽然 setCurrentRow(record) 更新了数据。但 CreateForm 组件没有正确响应新的 values prop 主要原因: CreateForm 组件可能在内部维护了自己的状态。 当 values prop 改变时,没有及时更新表单的值。 建议修改 CreateForm 组件,添加 useEffect 来 ...

阅读全文...

golang 通过 SMTP 服务发送邮件

要在服务器的后台接口上,增加一个发送邮件的接口。每天调用的频率也不高。 最终选择了这个库 https://github.com/go-gomail/gomail Star 4.5K,近十年没有更新了。。。但测试没有任何问题,而且也完全满足我的需求。 安装 > go get gopkg.in/gomail.v2 代码 package main import ( gomail "gopkg.in/gomail.v2" ) func main() { msg := gomail.NewMessage() msg.SetHeader("From&quo ...

阅读全文...

随机生成身份证号,手机号,邮箱地址的微信小程序

最近在开发一个学校大赛的报名系统。由于没有专门的测试人员,功能测试也得自己来。遇到需要大量输入学生和老师信息的功能时,录入费时费力又枯燥,实在是不想手动录入了😮‍💨,决定写个小程序,自动随机生成身份证号,手机号,邮箱地址等个人资料。 小程序界面效果如下 每点击一次按钮,都会随机生成一个新的个人资料。微信小程序的好处是,在手机和电脑上都能使用。省去了开发两套的麻烦。 开发完成后,我立马测试了一下,哈哈,确实方便,瞬间就能填好一堆测试账号信息。例如,学校大赛报名参赛系统中的,学生信息,及辅导老师信息的录入。 体验方式 长按识别或扫码下面的小程序码 微信中搜索“大象计算器”小程序,在首页底 ...

阅读全文...

推荐本书《做难而正确的事》(Fall in Love with the Problem, Not the Solution)

这是年前在年会上,百无聊赖之际读完的一本书。国内的简中版书名是《做难而正确的事》,确实容易让人下头,也被 Twitter 上的网友调侃为创业伟哥。还是原文书名比较贴切一点 Fall in Love with the Problem, Not the Solution: A Handbook for Entrepreneurs 作者的几个 app 产品也确实符合这个主题,一是行车导航 app,一个是公交站牌 app。都是解决了自己的实际问题。第一个 app 被 Google 十几亿美金收购。最令我印象深刻的是,作为一个导航 app,居然开始时没有地图数据,完全靠早期用户 gps 行驶数据生成 ...

阅读全文...

React Native 开发 Windows 客户端

在春节假期,使用 React Native 成功开发了两款 Android App 之后。我突然想试试是否可以用 RN 开发 Windows 客户端试试,毕竟是微软官方支持的,而且 github 上 star 数也很多,应该是靠谱的。不妨动手一试。 虽然这次尝试以失败告终,但是也算是证明了直接使用 Expo 的脚手架开发 Windows 客户端并不合适。 微软官方文档 https://microsoft.github.io/react-native-windows/docs/getting-started Could not find MSBuild with VCTools for Visu ...

阅读全文...

React Native 开屏画面 splash screen

编译出来的 React Native Android App 在打开时,有个开屏画面,一闪而过。 虽然不到一秒,但是也算非常显眼了。 这个官方的学名为 Splash Screen: The SplashScreen module from the expo-splash-screen library is used to tell the splash screen to remain visible until it has been explicitly told to hide. This is useful to do tasks that will happen behind th ...

阅读全文...

VSCode 快捷键

用了 Github Copilot 之后,发现完全脱离不了 VSCode 了,所以需要了解一下常用的快捷键。 注:下面的快捷键,不会跟 Vim 插件的快捷键冲突。 command palette 命令调色板 Ctrl + Shift + P 完全脱离鼠标就能快速执行一些操作,例如,新建一个文件。 快捷键之后,输入 new file,选中就能立即新建文件。 切换文件 Ctrl + P 切换到 git 视图 Ctrl + Shift + G ...

阅读全文...

优化 React Native 编译的 Android APK 包体积

默认编译出来的 React Native 的 Android APK 包体积巨大,有 70M 这么大。而我平时用原生开发的 Android App,即便加入了 N 多大图片,也才 20M 大小。 感觉还是有必要优化一下的,毕竟打包出来这么大体积的 APK,放出来给人下载,一是浪费存储空间,二是看起来也不专业,容易让人产生疑问,是不是塞了不必要的东西在 App 里面。 开发环境 "expo": "~52.0.27", "react-native": "0.76.6", 使用 Android Studio 的 AP ...

阅读全文...

大年初一用 react native 开发了一款笔记 app

假期写了好几天 react native,发现越发的熟练,于是顺手开发了一个 Android 版本的 博客 app,这样就能随时在手机上写笔记了。 一共实现了三个功能界面,登录界面,列表展示页面,编辑页。 但是功能还不完善,需要像 twitter 一样,加上话题功能,及图片功能。 不过,开发速度已经超出了我的预期,在 GitHub copilot 的辅助下,大概半天就开发上线了。而且在此期间,copilot 的进步肉眼可见,例如 chat 功能在初一的更新后已经可以实时基于文件内容更新了。期间也尝试了一下这两天非常火的 deepseek,估计是用户量暴增,我用了几次要么反应慢,要么提示超时。 ...

阅读全文...

ssh: connect to host github.com port 22: Resource temporarily unavailable

从昨天晚上开始,发现无法直接拉取 github 上的代码仓库了。报错如下: ssh: connect to host github.com port 22: Resource temporarily unavailable fatal: Could not read from remote repository. Please make sure you have the correct access rights 我以为我的 github 账号权限出了问题。 但是换成 https 协议,会报: Failed to connect to github.com port 443: Conn ...

阅读全文...

Nginx 配置支持 mjs 文件的加载

用 Nginx 部署了一个前端项目,发现 pdf.js 相关的功能异常。 从浏览器的 console 来看,报错信息如下: Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of "application/octet-stream". Strict MIME type checking is enforced for module scripts per HTML spec. 参考: https://git ...

阅读全文...