TypeScript 更安全的 6 个写法:别再用 any 了
TypeScript 很强大,但大多数开发者只用到了皮毛。遇到报错就甩一个 any,用 as 让编译器闭嘴,然后纳闷为什么运行时还是出错。下面这 6 个写法,能让你的 TypeScript 代码更安全,在 bug 跑到用户面前之前就抓住它。
阅读量: 62 标签: TypeScript
object-view-box:终于能用img标签直接裁切图片了
前端做图片裁切这件事,这些年一直有点麻烦。你想在卡片列表里稳定露出大图的某个区域,比如把人物的脸露出来,老办法都差不多:外面包一层div设overflow:hidden,里面的img用object-fit:cover
阅读量: 45 标签: 属性
Pinia 状态持久化:刷新页面不丢数据的完整方案
用 Vue3 做项目,Pinia 是官方推荐的状态管理工具。它很轻量,用起来也简单。但有一个问题:页面一刷新,Store 里的数据就全没了。用户登录状态、系统设置、表单填了一半的内容,这些跨会话的数据要保留下来,就得自己想办法。
阅读量: 44 标签: Pinia
Vue3 TransitionGroup 组件:列表动画就这么简单
做后台管理系统的时候,经常要给列表加动画。商品列表、消息通知、标签页、看板卡片,这些东西加个动画,用户体验会好很多。Vue3 把 TransitionGroup 做成内置组件,就是为了解决这个问题。
阅读量: 25 标签: 动画
Trae 的 6 种开发模式怎么选?看完这篇你就懂了
Trae 不只是一个聊天写代码的工具。它覆盖了好几种开发场景,从新手到老手都能找到适合自己的用法。下面把这 6 种模式一个一个说清楚。IDE 协同模式:人说了算,AI 搭把手。所有文件改动、命令执行都得你点头。
阅读量: 46 标签: Trae
CSS 代码放哪?4 种方式一次讲清楚
很多刚学网页制作的新手,都踩过这个坑:CSS 样式写了半天,页面没变化,样式全乱套。说到底就是代码放错了地方。CSS 的几种存放位置,对应不同的化妆方式,用途一看就明白。
阅读量: 23 标签: css
MCP 和 Skills 到底什么关系?不是谁干掉谁,是分工不同
说实话,我一开始也觉得 Skills 加 CLI 确实比 MCP 简单很多。在本地跑 Agent 的场景下,一个 SKILL.md 文件再加一行 CLI 命令,比配一个 MCP Server 省事太多了。但后来我做 Agent 产品的时候发现,很多场景根本不适用这套东西。
阅读量: 22 标签: MCP
Vue3 中的 Teleport 和 KeepAlive:这两个内置组件到底怎么用
做后台管理系统的同学一定遇到过这个问题:写了一个弹窗,结果被父级容器的 overflow: hidden 或者 transform: scale() 给整变形了。还有做多步骤表单的时候,用户填到第三步,一不小心点走了标签页,回来发现填的东西全没了。
阅读量: 24 标签: 组件
JS异步编程入门:像做饭一样理解代码执行顺序
JS里的异步编程,本质和这事儿一模一样。我们写的代码,就像你做菜的流程。那些需要“等20分钟”的操作(比如加载图片、请求数据),就是异步任务——不用一直等着它完成,代码可以先去做其他事,等异步任务结束,再回来处理它的结果。
阅读量: 25 标签: 异步
Constructable Stylesheets:让 Web Components 的样式只解析一次,所有实例共享
页面里有几十个 Web Components,每个 Shadow Root 都塞了同一份样式。一开始觉得没什么。组件多了之后,内存开始悄悄涨。CSS 在每个实例里都被完整解析了一遍。
阅读量: 26 标签: 解析
Trae CN 的 Skill 和 MCP 怎么用?看完这篇你就会了
用好 Trae CN,关键就两个东西:Skill 和 MCP。搞懂它们,你就能让 AI 按你的套路干活,还能连上各种外部工具。这篇不讲虚的,直接上手。Skill 就是你教给 Trae 的固定流程。
阅读量: 28 标签: Trae
TypeScript 7.0 Beta 发布:编译器重写为 Go,性能大幅提升
这次更新真正的大动作只用一句话就能说清楚:编译器被重写成 Go 了。正因为这个变化,许多项目的构建速度会明显提升,而且 TypeScript 终于开始支持原生多线程。换句话说,这不是一次普通的版本更新,而是 TypeScript 底层发动机被换掉了。
阅读量: 30 标签: TypeScript