[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"home-feed":3,"home-rank":261,"home-banners":340,"home-tags":357,"home-course-categories":369,"home-courses":384},{"items":4,"nextCursor":260},[5,31,44,53,65,76,88,97,106,114,130,138,155,170,190,202,216,229,241,250],{"id":6,"title":7,"summary":8,"cover":9,"author":10,"tags":15,"viewCount":28,"likeCount":11,"collectCount":11,"commentCount":11,"status":29,"publishedAt":30},35,"AI 时代前端工程师的核心能力：从“写代码”转向“驾驭 Agent”","未来不是程序员消失，而是程序员的工作方式改变。","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002Fa3cff479-3aba-403b-882a-3168705be9e8.png",{"id":11,"username":12,"avatar":13,"bio":14},1,"DevShareAdmin","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F98609a86-e08d-437b-b921-1291fc5a1b4d.jpg","DevShare（技享）官方账号",[16,20,24],{"id":17,"name":18,"slug":19},3,"人工智能","ai",{"id":21,"name":22,"slug":23},2,"前端","frontend",{"id":25,"name":26,"slug":27},4,"Vue","vue",72,"published","2026-09-16T16:26:40.761Z",{"id":32,"title":33,"summary":34,"cover":35,"author":36,"tags":37,"viewCount":41,"likeCount":42,"collectCount":42,"commentCount":42,"status":29,"publishedAt":43},34,"前端团队如何搭建 AI 原生研发流程：从需求到上线的完整闭环","AI Coding ≠ 一个人玩 AI。**  **AI Engineering = 团队重新设计研发流程","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F1d2b4332-a0bd-4151-8dff-932b7f51fabe.png",{"id":11,"username":12,"avatar":13,"bio":14},[38,39,40],{"id":17,"name":18,"slug":19},{"id":21,"name":22,"slug":23},{"id":25,"name":26,"slug":27},51,0,"2026-09-16T16:25:52.916Z",{"id":45,"title":46,"summary":47,"cover":48,"author":49,"tags":50,"viewCount":51,"likeCount":42,"collectCount":42,"commentCount":11,"status":29,"publishedAt":52},33,"给 AI 装上“项目记忆”：CLAUDE.md、Rules、Skills 到底怎么选？","AI 最怕的不是不会写，而是不知道你的项目。","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F8099325f-2967-40d1-8a09-d3bc5275d263.png",{"id":11,"username":12,"avatar":13,"bio":14},[],48,"2026-09-16T16:25:00.558Z",{"id":54,"title":55,"summary":56,"cover":57,"author":58,"tags":59,"viewCount":63,"likeCount":42,"collectCount":42,"commentCount":42,"status":29,"publishedAt":64},32,"AI 不只是写代码：前端测试、Debug、性能优化也能自动化","真正的 AI 提效，不只是少写代码，而是少 Debug。","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002Fceaabd2f-3cd4-4ef9-b39b-fb53da55954c.png",{"id":11,"username":12,"avatar":13,"bio":14},[60,61,62],{"id":21,"name":22,"slug":23},{"id":17,"name":18,"slug":19},{"id":25,"name":26,"slug":27},43,"2026-09-16T16:14:15.573Z",{"id":66,"title":67,"summary":68,"cover":69,"author":70,"tags":71,"viewCount":54,"likeCount":42,"collectCount":42,"commentCount":42,"status":29,"publishedAt":75},31,"AI + Vue 3：从需求到完整功能，如何让 Agent 一次把活干完","不要让 AI 写代码，让 AI 完成任务。","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002Fefae8e65-3bd2-4f7b-9fd2-10134d61ecda.png",{"id":11,"username":12,"avatar":13,"bio":14},[72,73,74],{"id":17,"name":18,"slug":19},{"id":21,"name":22,"slug":23},{"id":25,"name":26,"slug":27},"2026-09-16T16:08:55.888Z",{"id":77,"title":78,"summary":79,"cover":80,"author":81,"tags":82,"viewCount":86,"likeCount":42,"collectCount":42,"commentCount":42,"status":29,"publishedAt":87},30,"AI Code Review：让 AI 成为你的第一轮代码审查员","AI 写完代码，不代表代码可以 Merge","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002Fbea1da3e-6eec-4db1-b99c-9e0e96912f27.png",{"id":11,"username":12,"avatar":13,"bio":14},[83,84,85],{"id":17,"name":18,"slug":19},{"id":21,"name":22,"slug":23},{"id":25,"name":26,"slug":27},27,"2026-09-16T16:02:55.796Z",{"id":89,"title":90,"summary":91,"cover":92,"author":93,"tags":94,"viewCount":95,"likeCount":42,"collectCount":42,"commentCount":42,"status":29,"publishedAt":96},29,"D2C：从设计稿到页面代码，AI 如何打通设计到开发","设计稿 → AI → 代码 → 浏览器 → 验证","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F01095e01-d222-47e0-a533-f0d26433112b.png",{"id":11,"username":12,"avatar":13,"bio":14},[],19,"2026-09-16T15:59:21.330Z",{"id":98,"title":99,"summary":100,"cover":101,"author":102,"tags":103,"viewCount":104,"likeCount":42,"collectCount":42,"commentCount":42,"status":29,"publishedAt":105},28,"MCP 到底是什么？前端工程师如何让 AI 真正“连接”开发工具","Skill 给 AI 方法，MCP 给 AI 工具。","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002Fb6a6f860-3ba9-4881-a2d1-d09cc7d0bdd8.png",{"id":11,"username":12,"avatar":13,"bio":14},[],18,"2026-09-16T15:55:18.485Z",{"id":86,"title":107,"summary":108,"cover":109,"author":110,"tags":111,"viewCount":112,"likeCount":42,"collectCount":42,"commentCount":42,"status":29,"publishedAt":113},"前端工程师的 AI Skill：别再重复告诉 AI“项目应该怎么写”","Prompt 是临时沟通，Skill 是给 AI 建立长期工作方法。","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F2738f3cc-e6fe-4908-bada-80045a9d56eb.png",{"id":11,"username":12,"avatar":13,"bio":14},[],17,"2026-09-16T15:49:26.480Z",{"id":115,"title":116,"summary":117,"cover":118,"author":119,"tags":120,"viewCount":128,"likeCount":11,"collectCount":11,"commentCount":11,"status":29,"publishedAt":129},26,"从 Copilot 到 Coding Agent：前端开发正在进入 AI Agent 时代","以前 AI 帮我们写代码 现在 AI 开始帮我们完成开发任务","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002Fbfad238e-c627-4765-8f2d-3a49c8eae780.png",{"id":11,"username":12,"avatar":13,"bio":14},[121,122,123,127],{"id":17,"name":18,"slug":19},{"id":21,"name":22,"slug":23},{"id":124,"name":125,"slug":126},9,"工具","tools",{"id":25,"name":26,"slug":27},21,"2026-09-16T15:11:41.521Z",{"id":131,"title":132,"summary":133,"cover":134,"author":135,"tags":136,"viewCount":89,"likeCount":11,"collectCount":42,"commentCount":42,"status":29,"publishedAt":137},25,"说说真实DOM和虚拟DOM的区别?它们的优缺点是什么?：深入理解前端渲染机制与性能优化之道",null,"https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F808ada09-b138-45dc-bb66-db1a9c1c1b08.jpg",{"id":11,"username":12,"avatar":13,"bio":14},[],"2026-09-10T06:12:29.982Z",{"id":139,"title":140,"summary":141,"cover":133,"author":142,"tags":146,"viewCount":151,"likeCount":152,"collectCount":63,"commentCount":153,"status":29,"publishedAt":154},24,"从零实现一个 Mini Meilisearch 索引","从零实现一个 Mini Meilisearch 索引——一篇关于工程实践与性能优化的深度文章。",{"id":143,"username":144,"avatar":133,"bio":145},5,"TypeScriptFan","热爱技术写作的开发者 #5",[147,150],{"id":143,"name":148,"slug":149},"数据库","database",{"id":25,"name":26,"slug":27},861,42,12,"2026-09-09T23:56:00.708Z",{"id":156,"title":157,"summary":158,"cover":133,"author":159,"tags":162,"viewCount":167,"likeCount":168,"collectCount":115,"commentCount":143,"status":29,"publishedAt":169},23,"JWT 与 Session 之争：现代认证方案解析","JWT 与 Session 之争：现代认证方案解析——一篇关于工程实践与性能优化的深度文章。",{"id":17,"username":160,"avatar":133,"bio":161},"AsyncAwait","热爱技术写作的开发者 #4",[163,164],{"id":17,"name":18,"slug":19},{"id":11,"name":165,"slug":166},"性能优化","performance",709,13,"2026-09-09T17:56:00.708Z",{"id":171,"title":172,"summary":173,"cover":133,"author":174,"tags":178,"viewCount":187,"likeCount":188,"collectCount":124,"commentCount":98,"status":29,"publishedAt":189},22,"Object Storage 选型：OSS、S3 与 R2 对比","Object Storage 选型：OSS、S3 与 R2 对比——一篇关于工程实践与性能优化的深度文章。",{"id":175,"username":176,"avatar":133,"bio":177},6,"ByteDancer","热爱技术写作的开发者 #3",[179,183],{"id":180,"name":181,"slug":182},10,"后端","backend",{"id":184,"name":185,"slug":186},8,"云原生","cloud-native",588,74,"2026-09-09T11:56:00.708Z",{"id":128,"title":191,"summary":192,"cover":133,"author":193,"tags":196,"viewCount":199,"likeCount":200,"collectCount":152,"commentCount":128,"status":29,"publishedAt":201},"SSR 与 CSR 的边界：什么时候该用服务端渲染","SSR 与 CSR 的边界：什么时候该用服务端渲染——一篇关于工程实践与性能优化的深度文章。",{"id":21,"username":194,"avatar":133,"bio":195},"CodeMaster","热爱技术写作的开发者 #2",[197,198],{"id":21,"name":22,"slug":23},{"id":143,"name":148,"slug":149},459,45,"2026-09-09T05:56:00.708Z",{"id":203,"title":204,"summary":205,"cover":133,"author":206,"tags":209,"viewCount":212,"likeCount":213,"collectCount":131,"commentCount":214,"status":29,"publishedAt":215},20,"ESLint 9 扁平化配置完全指南","ESLint 9 扁平化配置完全指南——一篇关于工程实践与性能优化的深度文章。",{"id":25,"username":207,"avatar":133,"bio":208},"LinDaiDai","热爱技术写作的开发者 #1",[210,211],{"id":124,"name":125,"slug":126},{"id":17,"name":18,"slug":19},308,16,14,"2026-09-08T23:56:00.708Z",{"id":95,"title":217,"summary":218,"cover":133,"author":219,"tags":220,"viewCount":226,"likeCount":227,"collectCount":184,"commentCount":222,"status":29,"publishedAt":228},"Monorepo 工程化：pnpm workspace 实践","Monorepo 工程化：pnpm workspace 实践——一篇关于工程实践与性能优化的深度文章。",{"id":11,"username":12,"avatar":13,"bio":14},[221,225],{"id":222,"name":223,"slug":224},7,"Node.js","nodejs",{"id":180,"name":181,"slug":182},157,77,"2026-09-08T17:56:00.708Z",{"id":104,"title":230,"summary":231,"cover":133,"author":232,"tags":233,"viewCount":238,"likeCount":51,"collectCount":239,"commentCount":77,"status":29,"publishedAt":240},"用 Vitest 给 Vue 组件写高质量单元测试","用 Vitest 给 Vue 组件写高质量单元测试——一篇关于工程实践与性能优化的深度文章。",{"id":143,"username":144,"avatar":133,"bio":145},[234,237],{"id":175,"name":235,"slug":236},"React","react",{"id":21,"name":22,"slug":23},836,41,"2026-09-08T11:56:00.708Z",{"id":112,"title":242,"summary":243,"cover":133,"author":244,"tags":245,"viewCount":248,"likeCount":95,"collectCount":139,"commentCount":156,"status":29,"publishedAt":249},"Web 安全实践：XSS、CSRF 与 CORS","Web 安全实践：XSS、CSRF 与 CORS——一篇关于工程实践与性能优化的深度文章。",{"id":17,"username":160,"avatar":133,"bio":161},[246,247],{"id":25,"name":26,"slug":27},{"id":124,"name":125,"slug":126},693,"2026-09-08T05:56:00.708Z",{"id":213,"title":251,"summary":252,"cover":133,"author":253,"tags":254,"viewCount":257,"likeCount":258,"collectCount":222,"commentCount":213,"status":29,"publishedAt":259},"微服务还是单体？小团队的架构演进之路","微服务还是单体？小团队的架构演进之路——一篇关于工程实践与性能优化的深度文章。",{"id":175,"username":176,"avatar":133,"bio":177},[255,256],{"id":11,"name":165,"slug":166},{"id":222,"name":223,"slug":224},553,80,"2026-09-07T23:56:00.708Z","eyJwIjoiMjAyNi0wOS0wN1QyMzo1NjowMC43MDhaIiwiaWQiOjE2fQ",[262,268,274,280,286,298,310,316,328,334],{"rank":11,"article":263,"score":42},{"id":104,"title":230,"summary":231,"cover":133,"author":264,"tags":265,"viewCount":238,"likeCount":51,"collectCount":239,"commentCount":77,"status":29,"publishedAt":240},{"id":143,"username":144,"avatar":133,"bio":145},[266,267],{"id":175,"name":235,"slug":236},{"id":21,"name":22,"slug":23},{"rank":21,"article":269,"score":42},{"id":128,"title":191,"summary":192,"cover":133,"author":270,"tags":271,"viewCount":199,"likeCount":200,"collectCount":152,"commentCount":128,"status":29,"publishedAt":201},{"id":21,"username":194,"avatar":133,"bio":195},[272,273],{"id":21,"name":22,"slug":23},{"id":143,"name":148,"slug":149},{"rank":17,"article":275,"score":42},{"id":139,"title":140,"summary":141,"cover":133,"author":276,"tags":277,"viewCount":151,"likeCount":152,"collectCount":63,"commentCount":153,"status":29,"publishedAt":154},{"id":143,"username":144,"avatar":133,"bio":145},[278,279],{"id":143,"name":148,"slug":149},{"id":25,"name":26,"slug":27},{"rank":25,"article":281,"score":42},{"id":171,"title":172,"summary":173,"cover":133,"author":282,"tags":283,"viewCount":187,"likeCount":188,"collectCount":124,"commentCount":98,"status":29,"publishedAt":189},{"id":175,"username":176,"avatar":133,"bio":177},[284,285],{"id":180,"name":181,"slug":182},{"id":184,"name":185,"slug":186},{"rank":143,"article":287,"score":42},{"id":124,"title":288,"summary":289,"cover":133,"author":290,"tags":291,"viewCount":294,"likeCount":295,"collectCount":296,"commentCount":86,"status":29,"publishedAt":297},"Tailwind CSS v4 新特性详解：CSS-first 配置","Tailwind CSS v4 新特性详解：CSS-first 配置——一篇关于工程实践与性能优化的深度文章。",{"id":21,"username":194,"avatar":133,"bio":195},[292,293],{"id":222,"name":223,"slug":224},{"id":180,"name":181,"slug":182},389,57,38,"2026-09-06T05:56:00.708Z",{"rank":175,"article":299,"score":42},{"id":153,"title":300,"summary":301,"cover":133,"author":302,"tags":303,"viewCount":306,"likeCount":307,"collectCount":308,"commentCount":104,"status":29,"publishedAt":309},"GraphQL 与 REST 的取舍：我们为什么选 REST","GraphQL 与 REST 的取舍：我们为什么选 REST——一篇关于工程实践与性能优化的深度文章。",{"id":143,"username":144,"avatar":133,"bio":145},[304,305],{"id":180,"name":181,"slug":182},{"id":184,"name":185,"slug":186},801,54,39,"2026-09-06T23:56:00.708Z",{"rank":222,"article":311,"score":42},{"id":112,"title":242,"summary":243,"cover":133,"author":312,"tags":313,"viewCount":248,"likeCount":95,"collectCount":139,"commentCount":156,"status":29,"publishedAt":249},{"id":17,"username":160,"avatar":133,"bio":161},[314,315],{"id":25,"name":26,"slug":27},{"id":124,"name":125,"slug":126},{"rank":184,"article":317,"score":42},{"id":318,"title":319,"summary":320,"cover":133,"author":321,"tags":322,"viewCount":325,"likeCount":41,"collectCount":326,"commentCount":124,"status":29,"publishedAt":327},15,"数据库索引设计：B+ 树与覆盖索引","数据库索引设计：B+ 树与覆盖索引——一篇关于工程实践与性能优化的深度文章。",{"id":21,"username":194,"avatar":133,"bio":195},[323,324],{"id":184,"name":185,"slug":186},{"id":175,"name":235,"slug":236},419,40,"2026-09-07T17:56:00.708Z",{"rank":124,"article":329,"score":42},{"id":203,"title":204,"summary":205,"cover":133,"author":330,"tags":331,"viewCount":212,"likeCount":213,"collectCount":131,"commentCount":214,"status":29,"publishedAt":215},{"id":25,"username":207,"avatar":133,"bio":208},[332,333],{"id":124,"name":125,"slug":126},{"id":17,"name":18,"slug":19},{"rank":180,"article":335,"score":42},{"id":213,"title":251,"summary":252,"cover":133,"author":336,"tags":337,"viewCount":257,"likeCount":258,"collectCount":222,"commentCount":213,"status":29,"publishedAt":259},{"id":175,"username":176,"avatar":133,"bio":177},[338,339],{"id":11,"name":165,"slug":166},{"id":222,"name":223,"slug":224},[341,347,352],{"id":17,"title":342,"subtitle":133,"image":343,"link":344,"enabled":345,"sortOrder":42,"createdAt":346,"updatedAt":346},"Vue 3 + TypeScript 企业级项目实战","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F75232aa3-5c69-4fe3-8c7f-fbf8b30fb066.webp","\u002Fcourses\u002F6",true,"2026-09-23T05:29:24.411Z",{"id":21,"title":348,"subtitle":133,"image":349,"link":350,"enabled":345,"sortOrder":42,"createdAt":351,"updatedAt":351},"Vue Router 路由架构实战","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F4751081e-8516-42b5-bc03-9c9f3f4c4c24.webp","\u002Fcourses\u002F3","2026-09-23T05:28:50.416Z",{"id":11,"title":353,"subtitle":133,"image":354,"link":355,"enabled":345,"sortOrder":42,"createdAt":356,"updatedAt":356},"Vue 3 响应式原理与源码解析","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F1df2c1f0-67b5-4c9d-a57c-efc5e9e9f0b1.webp","\u002Fcourses\u002F2","2026-09-23T05:28:16.080Z",[358,359,360,362,363,364,365,366,367,368],{"id":222,"name":223,"slug":224,"articleCount":25},{"id":175,"name":235,"slug":236,"articleCount":25},{"id":25,"name":26,"slug":27,"articleCount":361},11,{"id":184,"name":185,"slug":186,"articleCount":143},{"id":17,"name":18,"slug":19,"articleCount":361},{"id":21,"name":22,"slug":23,"articleCount":361},{"id":180,"name":181,"slug":182,"articleCount":143},{"id":124,"name":125,"slug":126,"articleCount":143},{"id":11,"name":165,"slug":166,"articleCount":143},{"id":143,"name":148,"slug":149,"articleCount":175},[370,372,374,376,377,378,380,381,382,383],{"id":21,"name":22,"slug":23,"courseCount":371},70,{"id":180,"name":181,"slug":182,"courseCount":373},78,{"id":17,"name":18,"slug":19,"courseCount":375},44,{"id":143,"name":148,"slug":149,"courseCount":66},{"id":184,"name":185,"slug":186,"courseCount":200},{"id":11,"name":165,"slug":166,"courseCount":379},55,{"id":25,"name":26,"slug":27,"courseCount":124},{"id":175,"name":235,"slug":236,"courseCount":184},{"id":222,"name":223,"slug":224,"courseCount":156},{"id":124,"name":125,"slug":126,"courseCount":379},{"items":385,"nextCursor":465},[386,403,415,428,441,455],{"id":11,"title":387,"cover":388,"videoUrl":389,"summary":390,"teacher":391,"tags":396,"difficulty":399,"enrollCount":42,"badge":400,"status":29,"sortOrder":401,"publishedAt":402},"Vue 3 Composition API 从零到实战","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F226e8934-4014-42ba-85bf-aadc501df7be.webp","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002Fvideos\u002F2026\u002F10\u002Feb4df87d-cc39-406b-b65c-4a2fcc9f6c7c.mp4","从真实项目出发，讲清核心原理、工程实践与常见坑点。",{"id":392,"name":393,"avatar":394,"bio":395},121,"陈博文老师","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F20a31178-17e8-4474-83f4-f5e0712f0d6b.webp","前端架构师，专注大型 Web 应用、工程化与性能治理。",[397,398],{"id":21,"name":22,"slug":23},{"id":25,"name":26,"slug":27},"beginner","新课",300,"2026-09-23T05:17:46.478Z",{"id":21,"title":353,"cover":404,"videoUrl":133,"summary":405,"teacher":406,"tags":410,"difficulty":399,"enrollCount":42,"badge":400,"status":29,"sortOrder":413,"publishedAt":414},"https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F6cb94ca6-8d7d-4175-9d13-f491d32ff706.webp","围绕企业常见场景，梳理从设计、编码到上线的完整流程。",{"id":21,"name":407,"avatar":408,"bio":409},"林子轩老师","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002Fe262c403-5db0-4767-a460-603df60fbde3.webp","后端工程师，长期实践高并发、分布式服务与稳定性建设。",[411,412],{"id":21,"name":22,"slug":23},{"id":25,"name":26,"slug":27},299,"2026-09-23T05:17:47.177Z",{"id":17,"title":348,"cover":416,"videoUrl":133,"summary":417,"teacher":418,"tags":422,"difficulty":425,"enrollCount":42,"badge":400,"status":29,"sortOrder":426,"publishedAt":427},"https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F1cb023d5-70c2-49fd-b520-4489efafa2cb.webp","结合可运行示例，把抽象概念落到可以复用的代码与实践清单。",{"id":17,"name":419,"avatar":420,"bio":421},"周子轩老师","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F85617eb7-ecd6-405f-bb87-641e586d6ce9.webp","全栈工程师，关注 TypeScript、Node.js 与企业级应用架构。",[423,424],{"id":21,"name":22,"slug":23},{"id":25,"name":26,"slug":27},"intermediate",298,"2026-09-23T05:17:47.877Z",{"id":25,"title":429,"cover":430,"videoUrl":133,"summary":431,"teacher":432,"tags":436,"difficulty":425,"enrollCount":42,"badge":400,"status":29,"sortOrder":439,"publishedAt":440},"Pinia 状态管理最佳实践","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F0b9cb707-adda-4aea-a1b9-21c4d8e77c19.webp","以问题驱动的方式，覆盖核心 API、架构思路、调试方法和优化策略。",{"id":25,"name":433,"avatar":434,"bio":435},"黄子轩老师","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F58753ede-2fbb-4e1f-9385-680ff74f614c.webp","AI 应用工程师，专注大模型、RAG、Agent 与 AI 工程化落地。",[437,438],{"id":21,"name":22,"slug":23},{"id":25,"name":26,"slug":27},297,"2026-09-23T05:17:48.592Z",{"id":143,"title":442,"cover":443,"videoUrl":133,"summary":444,"teacher":445,"tags":449,"difficulty":452,"enrollCount":42,"badge":400,"status":29,"sortOrder":453,"publishedAt":454},"Vue 3 组件设计与复用体系","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002F35b25f26-1761-4e9c-875c-b9b8196f78fc.webp","通过完整案例，帮助建立从入门到项目落地的完整知识链路。",{"id":143,"name":446,"avatar":447,"bio":448},"吴子轩老师","https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002Fb453b16c-862a-432c-abb4-55dc8355e2d0.webp","云原生工程师，专注 Docker、Kubernetes 与持续交付体系。",[450,451],{"id":21,"name":22,"slug":23},{"id":25,"name":26,"slug":27},"advanced",296,"2026-09-23T05:17:49.286Z",{"id":175,"title":342,"cover":456,"videoUrl":133,"summary":390,"teacher":457,"tags":460,"difficulty":399,"enrollCount":42,"badge":400,"status":29,"sortOrder":463,"publishedAt":464},"https:\u002F\u002Fdevshare-assets.oss-cn-guangzhou.aliyuncs.com\u002Fuploads\u002F2026\u002F09\u002Ffe6b1219-e7c6-4839-bb1e-48eb381616c8.webp",{"id":175,"name":458,"avatar":394,"bio":459},"徐子轩老师","数据库工程师，长期实践 SQL 优化、缓存架构与数据治理。",[461,462],{"id":21,"name":22,"slug":23},{"id":25,"name":26,"slug":27},295,"2026-09-23T05:17:50.119Z","eyJvIjoyOTUsInAiOiIyMDI2LTA5LTIzVDA1OjE3OjUwLjExOVoiLCJpZCI6Nn0"]