最近使用monaco-editor来实现JSON数据编辑器,为了提升用户体验,需要实现JSON Schema的智能提示。研究后发现了实现方法,因此这里Mark下。
Mar 19, 2025
最近入手了MacBook Air M4,使用了几天觉得很不错,这里mark下我的使用体验。
Mar 19, 2025
EventEmitter初版 class EventEmitter{ constructor(){ this.events={} } on(type,listener){ if(!this.events[type]){ this.events[type]=[] } this.events[type].push(listener) } emit(type,...args){ this.events[type].forEach(listener=>{ listener.call(this,...args) }) } off(type,listener){ if(this.events[type]){ const index=this.events[type].indexOf(listener) if(index!==-1){ this.events[type].splice(index,1) } } } once(type,listener){ const onceListener=(...args)=>{ listener.call(this,...args) this.off(type,onceListener) } this.on(type,onceListener) } } 测试 const eventEmitter=new EventEmitter() const listener=(args)=>{ console.log(args); } eventEmitter.once('test',listener) eventEmitter.off('test',listener) eventEmitter.emit('test',{a:1}) 执行上述代码,会发现test事件被触发了一次,预期应该是不执行的,因为off了。解决办法如下。
Mar 18, 2025
最近开发的gitlink插件遇到个问题,在WebView中加载node_modules资源,当然也可以直接使用CDN资源,只是速度上来说不如直接加载本地资源,因此这里解决下如何加载node_modules资源。
Mar 17, 2025
最近开发的VSC拓展需要做下国际化,发现官方文档介绍这里是空白,只是给了个例子,这里就总结下如何做国际化。
Mar 14, 2025
最近刷到一个前端问题在发送 http 请求报文时,Host 是必要的吗,我平时没注意这点,因此简单查了下,这里总结下
Mar 13, 2025
Medium的MPP,GitHub的Sponsor,都是通过Stripe来实现打款支付。这里记录下Stripe遇到的一些问题。
Mar 12, 2025
简介 Screen Studio 是一款功能强大的屏幕录制工具,仅支持 macOS。它可以帮助用户轻松录制屏幕上的操作,并生成高质量的视频文件。 最近因为有视频录制需求,入了永久版229刀,使用后感觉还不错,分享下使用心得。
Mar 12, 2025
最近看一个老项目的依赖包升级,注意到node-sass已停止维护了,特地记录一下。
Mar 10, 2025
最近群里收到消息一个朋友在填写manus的waitlist时遇到有报错,他以为是站点的问题。我查看了一下,发现是Cloudflare的问题,确定了问题也就好解决了。我直接使用我的代理节点,帮忙填写了表单。 通过这个小问题,也说明了很多人没注意到Cloudflare的安全检查,这里就简单总结下。
Mar 10, 2025