首页
学习
活动
专区
圈层
工具
发布

Vue 3 从 Options API 到 Composition API:我踩过的坑和现在最推荐的写法

前言你好,我是喵喵侠,是一名前端开发。即便到了2026年,我依然能在很多维护中的老项目里看到OptionsAPI的身影。...很多同学在迁移到Vue3时,往往只是机械地把代码从data​搬到ref​,从methods​搬到普通的function。...今天我想聊聊在这两套API转换过程中我踩过的坑,以及目前我认为最稳健的写法。典型混用导致的痛点在OptionsAPI中,我们的思维是按属性组织的。...无法直接赋值​:你不能给reactive对象重新赋值一个新对象,否则旧的引用会失效。建议​:始终使用ref​。虽然.value看起来有点繁琐,但它在类型检查和响应性追踪上更可靠。...迁移到CompositionAPI,本质上是**从“配置式”向“逻辑式”**的思维转变。

16310

我的 AI 开发 “踩坑记”:从 API 调试工到真正的开发者

最头疼的就是 API 那档子事:GPT 要传 messages 数组,Midjourney 得等它慢悠悠返回 job ID 才能拿图,Whisper 传个音频还得改格式、调参数。...我代码里全是 “if 平台是 A 就这么写,else 平台是 B 就那么改” 的补丁,上次 Midjourney 突然把 aspect_ratio 改成 ratio,我对着文档调了一下午,差点以为自己不是做产品的...,是个专职 API 调试工。...直到在开发者论坛刷到有人说 Gateone.AI “能解放双手”,我抱着死马当活马医的心态试了试 —— 好家伙,这玩意儿简直是我的 “救命稻草”!...它把 50 多个 AI 模型全装在一个平台里,主打一个 “一站式调用”,最牛的是搞了 “API 标准化”,不管我用 GPT 还是 Claude,就一套调用方式,再也不用写那些烦人的适配层,指定个模型 ID

20610
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    从 0 到 1 掌握鸿蒙 AudioRenderer 音频渲染:我的自学笔记与踩坑实录(API 14)

    ​最近我在研究 HarmonyOS 音频开发。在音视频领域,鸿蒙的 AudioKit 框架提供了 AVPlayer 和 AudioRenderer 两种方案。.../error)异步回调:通过on('writeData')处理音频数据填充资源管理:严格的状态生命周期(必须显式调用release())二、开发流程详解:从创建实例到数据渲染1....自动重试逻辑 if (err.code === audio.ErrorCode.ERROR_BUFFER_UNDERFLOW) { this.reloadAudioFile(); }});六、总结:我的学习心得...踩坑总结未检查状态导致的崩溃(占所有错误的 60%+)API 版本差异(重点关注writeData回调的返回值)StreamUsage 配置错误导致的音频策略问题最后希望各位同学学习少踩坑,早日搞定这个...API,有问题也希望各位随时交流留言,欢迎关注我~​

    51300

    鸿蒙相机开发实战:从设备适配到性能调优 —— 我的 ArkTS 录像功能落地手记(API 15)

    引言:为什么我要写这份开发指南?作为一名老技术,最近特别喜欢研究鸿蒙相机功能,而且目前已经更新到API15了,那么咱们更要好好研究一下。...而且从手持云台到车载记录仪,每个项目都面临独特挑战:车载场景的高温稳定性、可穿戴设备的低功耗限制、多设备分辨率适配的玄学…… 这些痛点促使我重新梳理 HarmonyOS 相机开发的技术脉络 —— 这正是本文的起源...通过重构输出流创建逻辑(动态匹配分辨率列表),最终在中端设备上实现了全分辨率适配 —— 这个过程让我意识到:硬件层开发需要建立鸿蒙特有的知识体系,而系统化的实践总结尤为稀缺。...市面上的鸿蒙教程多聚焦 UI 框架,对 Camera Kit、Media Kit 等硬件交互模块的解析停留在 API 层面。作为一线开发者,我希望将设备适配、性能调优的实战经验转化为可复用的开发范式。...三重境界」功能实现:掌握 API 调用顺序(Surface 创建→流配置→状态监听)设备适配:理解硬件特性(分辨率、旋转、编解码能力)的差异化处理体验设计:从用户场景出发(防抖、低功耗、多端协同),构建全场景解决方案本文很多的优化策略是吸取官方

    33210

    从 “API 搬运工” 到 AI 大佬:我的团队靠它跳出企业级 AI 的 “碎片化坑”

    我们想都没想就去对接各自的 API,然后麻烦就像多米诺骨牌一样倒下来:先是技术债务爆炸。...有次 GPT 悄悄更了个小版本,我们的路由直接崩了,我不得不把最资深的工程师从 AI 创新任务里拽出来,让他当 “API 修理工”,咖啡喝空三罐才搞定,心疼得我直拍大腿。...就在我对着一堆 API 文档叹气时,朋友扔来个 Gateone.AI 的链接,说 “你要的企业级 AI 解决方案在这”。一试才发现,这玩意儿简直是为我们这种 “碎片化受害者” 量身定做的!...它最绝的是统一 API 接口—— 之前那些乱七八糟的适配器全扔了,就调一个标准接口,想切 GPT 还是 Claude,点一下就行,省了巨多维护时间。...现在我们的助手跑起来超稳,代码审查、Bug 追踪全搞定,团队终于不用当 “API 搬运工”,能专心琢磨怎么让 AI 更聪明,这不就是我们想要的 AI 创新吗?

    22110

    日本开发者打造的Hono火了:定义后React时代微框架的轻量未来

    不像 React,Hono 是基于 Web 标准构建的,它似乎可以表明 后 React 时代Web 框架的发展方向。...他说: 有些人用它构建经典的 Web API,有些人用它开发全栈应用,还有些人用它运行文档站点,我甚至看到它被用来在 Next.js 内部实现 API 层。...Hono 与 Express 的区别在于它是基于 Fetch API 构建的,这是一个 WHATWG 标准,定义了“请求、响应以及将它们绑定在一起的过程:获取”。...一位开发者在 Hacker News 上说,“在我所有的个人项目中,我一直在使用 Hono + Bun + SQLite,我真的很喜欢它。基本上,我已经用它替换了 Express 和 Node。”...相比之下,Next.js 是一个大型的、非常独特的端到端 React 技术栈。它包括基于文件的路由、服务器组件、数据获取、与 Turbopack 捆绑、图像优化等特性。

    80510

    【云原生】给我 10 分钟,带你上手一个 AWS serverless web server

    在本文中,我将向你展示如何在几分钟内启动并运行 AWS Lambda、Amazon API Gateway 和 AWS Amplify。...Amazon Amplify Console 可以提供静态 Web 资源的持续部署和托管,包括用户浏览器中加载的 HTML、CSS、JavaScript 及图像文件。...浏览器中执行的 JavaScript 可发送数据,也可从使用 Lambda 和 API Gateway 构建的公共后端 API 接收数据。...N CLI 为我们创建了一些东西,如下: API 端点 Lambda 函数 使用 Serverless Express 的 Web 服务器 /items 目录下根据不同方法生成的一些样板代码 接下来,让我们打开代码...,"items":["hello","world"]}% 要部署 API 和功能,我们可以运行 push 命令: $ amplify push 现在,你可以从任何 JS 客户端开始与 API 交互: /

    1.3K10

    Next.js,到底为什么这样对我?

    Hi,我是 ssh,今天给大家分享一篇关于 Next.js 的吐槽。作为一个想要产品化的框架,提供一致的 API 和易用性是必不可缺的。...第一个是,当你把页面部署到 Edge 的时候,你就没法设置 cookie 了。我不太清楚 Next.js 的历史,但是在我看来,它的 API 设计得不太合理。...你无法在中间件(middleware.ts)中使用 cookies()和 headers()! 请给我们一个统一的 API 来和请求对象交互。...随意的限制 还记得在 Edge 环境下你无法在 getServerSideProps()中设置 cookie 吗?...我还没有提缓存,这是另一个让人头疼的问题。 我不想对 Next.js 团队或 Vercel 有任何恶意揣测,但是他们似乎直接无视了在 page.tsx 中设置 cookie 的问题。

    1K20

    Mjpg-Streamer+Node.js实现在树莓派上的监控与拍照

    作为前端工程师的我,很自然的想到了使用Node作为服务器和机器人的控制中心,通过前端页面实现对机器人控制和视频图像的捕捉。 本文主要对项目中的一个单元:视频图像的捕捉和拍照功能进行开发记录和解析。...实现功能 一: 远程视频图像获取 二: 视频图像清晰度调节 三: 拍照功能 ---- 基于Express的服务器环境搭建 Express是基于Node的一个快速搭建服务器的框架,项目使用Express...action=stream就可以看到视频图像,其中localhost在实际使用中,换成了树莓派的IP地址,树莓派已经提前设置了静态地址,我使用的是192.168.123.251,因此,视频的地址就顾定成了...== '' pgrep以名称为依据从运行进程队列中查找进程,并显示查找到进程的id。...; 图片下载功能通过标签+download属性实现,但是chrome浏览器对与跨域的图像无法实现保存,只能在新页面打开。

    2.5K10

    “许多 App Store 排行榜靠前的 AI 应用,像是骗钱的”

    我一直在使用一些最受欢迎的产品来了解 2025 年人工智能工具的现状,而每出现一款让人工智能变得更有实用性的产品时,似乎同时会出现更多旨在利用这波炒作来赚钱的产品:这些产品会悄悄地把他们宣传的功能做成付费服务...我的提示很简单——“一条逼真的龙飞过火山”——但结果却到处都是错误,比如缺少一面的翅膀和奇怪的视角。 它生成的图像质量低下,大小或裁切处处是错误。在应用内点击几乎任何链接时都会出现广告。...我测试的另外两款高排名 HUBX 产品同样乏善可陈:Home AI“室内设计”应用吐出的房间图像充满幻觉,甚至作为概念图都几乎无法使用,而 Tattoo AI 应用完全无法工作。...虽然这三款应用都有大量五星评论,但社交媒体和 App Store 评论中的用户反馈绝大多数都是负面的。一个反复出现的抱怨是无法联系到客户服务。 上面是我插入 Home AI 的参考图像。...谷歌的 Magic Editor 和 Adobe Photoshop 等应用有专门的工具,可用来从照片中删除不需要的对象或在特定位置插入新对象。

    36100

    机器学习项目:使用Keras和tfjs构建血细胞分类模型

    血细胞数据集的类别 每个类包含3000个图像。该图显示了每个类的示例图像: ? 来自四个类的示例图像 我将每个图像的大小减小到(80x80x3),以便训练。...从image模块我们创建一个具有所有需配置的ImageDataGenerator。...卷积操作的主要作用是从图像中提取边界,换句话说,它们可用于提取图像的重要特征,如果所谓的滤波值(Filter Value)已知,则任何人都无法识别任何图像的最佳滤波值,因为我们使用卷积和神经网络,梯度下降将自动优化滤波值以提取图像中最重要的特征...吴恩达的课程deeplearning.ai帮助你更好地理解这些网络的工作。 我们的网络: 此任务必须使用CNN,因为简单的前馈神经网络无法了解数据集的每个类中存在的独特特征。...推理函数:我定义了一个可以取模型对象和输入图像源的函数,输入源可以是HTML img,也可以是URL,或图像的字节流。

    1.9K30

    再谈 API 的撰写 - 总览

    站在今天的角度看,那时我做的系统也有不少问题,很多 API 之外的问题没有考虑: API 的使用文档。...技术选型是无法脱离团队单独完成的,如果让我个人选择一个基础语言和框架,我大概会选择基于 Erlang/OTP,使用 Elixir 开发的 Phoenix,或者,干脆使用 Plug(Phoenix 的基石...在综合考察了这些框架之后,我选择了 restify,原因有三: 接口和结构非常类似 express(团队对此非常有经验),但比 express 更专注于 REST API 一系列 middleware...这种灵活性在团队协作的时候是种伤害,它让大家很容易写出来风格很不统一的代码,而且,在写入数据库和从数据库中读取数据的 normalization,离了 ORM 也会带来很多 ad-hoc 的代码。...这样,让工程师的效率和系统的效率达到一个平衡。在 node.js 下,这样的 ORM 不多,可用的似乎只有 waterline。

    1.7K70

    数据科学系列:plotly可视化入门介绍

    基于上述丰富的内心活动之后,我选择了plotly,并最终决定系统学习和试手一下。 02 plotly能干什么 plotly作为一个可视化库,当然是能用来画图了,而且是多种丰富样式的图。...其次,给出plotly中各组成模块的整体介绍,以期从宏观上了解plotly的宏观架构和各模块定位。...进行可视化时一般会涉及以下子模块: express: plotly中用于可视化的高级API graph_objects: 底层绘图接口,包含了所有图表对象和布局(graph_objs与其是同名包) io...,并提供了相近的布局设置功能(layout),类似于matplotlib的角色; plotly.express是高层API,是一种函数式的绘图风格,绘图的过程就是指定函数各个参数的过程,提供了更为简洁和方便的绘图功能...,并加以显示 2)使用高级API——express express之所以叫高级API,是因为具有更为顶层的抽象,或者说使用更少的代码即可得到更为丰富的绘图结果,更重要的express的绘图接口似乎天然就是为了适配

    1.6K30

    关于 Node.js 的认证方面的教程(很可能)是有误的

    在业余时间,我一直在挖掘各种 Node.js 教程,似乎每个 Node.js 开发人员都有一个博客用来发布自己的教程,讲述如何以正确的方式做事,或者更准确地说,他们做事的方式。...让 Node/Express 成为开发人员使用的更安全的生态系统。 错误一:凭证存储 让我们从凭证存储开始。...接下来,这是第四个结果,来自写于 2015 年的 Google 产出的 express js passport-local 教程。它使用 Mongoose ODM,实际上从我的数据库读取凭据。...好的,回到谷歌,这里似乎存在唯一的教程。我们找到了 Google 搜索 express passport 密码重置的第一个结果。还是我们的老朋友 bcrypt。...大多数开发人员都知道这一点,并尝试将他们的 AWS 密钥、Twitter 秘密等保留在他们胸前,但是这似乎并没有转移到被编写的代码中。 让我们使用 JSON Web 令牌获取 API 凭据。

    6.3K90

    可以浏览器页面运行 node 代码里了!webContainer 发布 1.0

    WebAssembly 和新的 capabilities API 的出现,使得编写一个基于 WebAssembly 的操作系统似乎成为可能,该操作系统功能强大到可以完全在浏览器中运行 Node.js。...它提供一个比本地环境更快、更安全、更一致的卓越开发环境,以实现无缝代码协作,而无需设置本地环境,这个目标似乎离 Web 开发人员越来越近了。...它的 output 属性是一个可读流 readableStream ,它接收所有的输出,包括 stdout and stderr,下面代码可已经进程的输出,打印出来const installProcess...虽然看起来功能十分有限,但这其实是一个很有意义的尝,是一个从 0 到 1 的突破,尝试在浏览器端运行一个微型的操作系统,相信不久的未来,不仅仅是 nodejs,其他的语言,例如 python、Java,...如果这篇文章对您有所帮助,可以点赞加收藏,您的鼓励是我创作路上的最大的动力。也可以关注我的公众号订阅后续的文章:Candy 的修仙秘籍(点击可跳转)图片

    1.3K20

    【node写接口】 通过node 快速搭建一个服务器、get请求、post请求 小白入门

    前言 从 前后端分离开始,接口大多由后端开发,前端负责请求接口将数据渲染到页面,某些时候需要自己搭建一台服务器用于一些文件图片请求或者进行后端相关知识的学习。...赶紧卷起来 今天,学习使用node搭建本地服务器 一、新建文件夹 1.任意位置新建一个文件夹,我建的文件夹名为demo 2.打开文件夹,在地址栏输入cmd(如图),回车就打开dos命令窗口了 打开文件夹后在地址栏输入并回车...= require('express') //创建web服务器 const app=express() // 通过ap.listen进行服务器的配置,并启动服务器,接收两个配置参数,一个是对应的端口号...,并启动服务器,接收两个配置参数,一个是对应的端口号,一个是启动成功的回调函数 //get接口的开发 app.get('/api/list',(err,res)=>{ res.send({...})) // 通过ap.listen进行服务器的配置,并启动服务器,接收两个配置参数,一个是对应的端口号,一个是启动成功的回调函数 //get接口的开发 app.get('/api/list',(err

    34211

    「首席看应用架构」轮询,SSE 和WebSocket,如何选择合适的?

    多路复用(轮询响应实际上无法同步) 轮询需要3次往返(TCP SIN,SSL和数据) 超时(如果连接保持空闲时间太长,代理服务器将关闭连接) 您可以在这里阅读更多关于现实世界的挑战。...HTTP和WebSocket都位于OSI模型的应用程序层,因此依赖于第4层的TCP。 有一个MDN文档详细解释了WebSocket,我也建议您阅读它。...('Listening on', port); }); 一旦我们从GitHub事件API获得数据,就可以在建立连接后将其流式传输到客户端。...它连接到我们的源并等待接收消息。现在,示例NodeJS服务器将如下所示。...经过漫长而详尽的客户端和服务器实施之后,SSE似乎是我们解决数据交付问题的最终答案。也有一些问题,但是可以解决。

    4.7K30

    人脸识别哪家强?亚马逊、微软、谷歌等大公司技术对比分析

    集成供应商的 API 获取 SDK 非常容易。使用 Composer 更容易。然而,我确实注意到一些可以改进的东西,以便开发者的生活变得更轻松。 亚马逊 我从亚马逊的识别 API 开始。...浏览他们的文档后,我真的开始觉得有点失落。我不仅没找到一些基本的例子(或者无法找到它们?),但我也有一种感觉,我必须点击几次,才能找到我想要的东西。...当我浏览图像检测面部时,我只计算了至少四分之一左右可见的每张脸。有趣的是,我的同事提出了一个略微不同的面部定义。 同事 1:我也计算过我大多无法看到的面孔。...(相对)小脸的人群 在分析了这些图像后,亚马逊似乎非常擅长检测人群中的人脸,以及相对较小的脸部。 小摘录 ? 亚马逊的示例图像 # 889545 ?...这个问题将在本系列的下一部分中回答。欢迎订阅我们的数据科学 RSS 源以便将来接收相关更新,非常感谢您阅读!

    2.1K30
    领券