首页 > 人工智能 > 人工智能 > 我如何用笨办法,速通 React 和 Next.js
“什么是 Hook?我为什么需要它?”
这是我作为初级开发入职的第一天早晨,输入给 AI 的第一个问题。当时我死死盯着 React 的官方文档,试图弄明白
useState 到底是个什么鬼。说实话,我整个人当时是崩溃的。
在大学期间,我接触的基本都是 Svelte。现在为了新工作,我必须在极短的时间内把 React 啃下来。但官方文档的字里行间,仿佛默认读者早就对 React 了如指掌。满篇的“触发重新渲染(re-render)”、“当前状态(current state)”看得我头晕眼花。
我一遍遍地滚动页面、反复阅读,大脑却依然一片空白。在那个阶段,我不需要高深的架构理论,我只需要一个能坐下来、耐心地把最基础的常识揉碎了讲给我听的人。
于是我向 AI 提问:“什么是 useState?”
AI 秒回了一大堆诸如“在函数组件里存储局部状态的钩子”、“闭包拦截变动”等极其官方的学术定义。对于一个刚入行的菜鸟来说,这些话等于白说。我气馁地回复了一句:“我听不懂。”AI 虽然稍微调整了措辞,但吐出来的依然是针对熟手的专业词汇。
直到我的导师走过来扫了一眼我的屏幕。他笑着对我说了一句彻底改变我后续职业生涯的话:
“你提问的方式完全错了。AI 根本不知道你是谁,你得明确告诉它,你希望它以什么样的姿态来教你。
试着别让它给你下定义,直接让它‘把我想象成 5 岁的小孩’再解释一遍。”
听起来有点幼稚,对吧?但我还是死马当活马医地试了。我敲下:“你能把 useState 当作是给 5 岁小孩解释那样,给我讲讲吗?” 蓝雨影视
这次,AI 的画风突变,它把
useState 比喻成了一个会根据你往里塞什么就变成什么颜色的神奇魔法盒。就在那一瞬间,我的大脑“叮”地一下,突然通了。
这根本不是什么高级的技术定义,但它在最恰当的时间点,降维对接了我当时极其有限的认知。我突然意识到,我不仅仅是找到了一个写代码的辅助工具,而是给自己请来了一位 24 小时在线、能随时根据我的智商调整教学语气的私人导师。
这次突破不仅帮我搞懂了一个 React 的核心概念,更重要的是,它教会了我如何正确地与 AI 共处。
在这之前,我一直把 AI 当成高级版的谷歌搜索,总指望输入一个关键词,它就能吐出完美无瑕的代码。但现实是: AI 给出的答案质量,完全取决于你提问的水平。
于是,我给自己总结了一套严丝合缝的结构化提问模板。每次在抛出硬核技术问题之前,我都会雷打不动地做三件事:
明确自身定位:“我是一个刚开始学 React 的初级前端开发。” 框定认知边界:“请用最通俗易懂的比喻来解释,默认我没有任何基础。” 管理输出预期:“先不要给我展示复杂的代码,用大白话把核心逻辑讲清楚。”
在这套自我降级、层层递进的提问策略下,AI 吐出来的不再是教科书里的死板说教,而是能完美被我吸收的养分。
随着时间的推移,到了第四周,我发现自己的提问方式发生了翻天覆地的变化。我不再问“什么是 useEffect”,而是会这样直白地把我的困惑摊开来聊:
“我是一个正在学 React 的新手。我的项目里必须用到 useEffect,但我完全搞不懂它在后台到底干了什么。你能用最简单的生活常识(比如去超市购物或者管家服务)把它比喻给一个 5 岁的小孩听吗?先别急着贴代码,把思路讲通。另外,我为什么非得用它?我直接把逻辑写在组件的函数体里会有什么灾难性的后果吗?”
我不再是盲目地索要答案,而是在 AI 的引导下,一层一层地去搭建自己的知识网络。我把自己的处境和疑惑交代得越诚实、越细节,对面的 AI 导师就能越精准地调动它的知识库来适配我。它不再是一个冰冷的工具,更像是一个永远不会对我翻白白眼、永远不知疲倦的温柔老师。
当我觉得自己已经把 React 的基本功练得差不多的时候,我做出了一个顺理成章的决定:把手头的小项目重构成 Next.js 架构。
当时的我天真地以为,这无非就是个微不足道的版本升级。然而,现实又给了我一记响亮的耳光。
我本能地问 AI:“我刚把项目从 React 搬到了 Next.js,现在有什么不一样了?”
这一个问题直接帮我打开了新世界(噩梦)的大门:文件路由系统、服务端组件(Server Components)与客户端组件(Client Components)的对立、还有让人摸不着头脑的 App Router。
在 React 里,所有的代码大快朵颐地在浏览器里跑;但在 Next.js 里,游戏规则彻底变了。有了上次的经验,这次我没有再去硬啃干瘪的文档,而是选择和我的 AI 导师进行高频的、针对具体报错的极限拉扯:
我:“我怎么才能一眼看出我写的某段代码是在服务器上跑的,还是在用户的浏览器里跑的?”
AI:“在 Next.js 里,所有组件默认都是服务端组件。如果你在文件最顶部写了
'use client',那这一部分才会打包去浏览器里跑。”我:“可我以前写纯 React 的时候根本没这个概念啊,为什么换到 Next.js 就会报错?”
AI:“因为纯 React 的一切都发生在浏览器里。而 Next.js 会在服务器上先把组件渲染一遍。这就导致你以前那些直接依赖浏览器特性的 React 代码会直接死锁。”
我:“懂了!也就是说,如果我的终端里报了
useState或者onClick找不到的错误,就意味着我必须在文件头加上'use client',对吗?”AI:“完全正确!因为状态和点击事件是浏览器才有的交互。把需要互动的组件标记为客户端组件,其余不需要动的地方留给服务端组件,这样性能才是无敌的。”
这场简短的对话,直接帮我省去了在技术论坛里通宵翻帖子的痛苦。AI 最强悍的导师属性,绝对不是给你背诵某段定义,而是 在你的编码思维跑偏、逻辑陷入死胡同的时候,精准地帮你做心理马杀鸡和认知对齐。
两个月前,我还是个连 JSX 语法都看不明白、被 React 文档吓得瑟瑟发抖、甚至开始怀疑自己到底适不适合干前端的绝望菜鸟。
而现在,我已经能够底气十足地用 Next.js 独立开发并部署全栈应用了。
这种蜕变并不是因为我突然基因突变变聪明了,也不是因为我买到了什么价值过万的“神级教程”。仅仅是因为我摸索出了一套在 AI 时代真正高效的“学习方法论”。 暮光影视
我不再盲目追逐那些高大上的名词,而是死磕最底层的业务理解。我学会了更艺术地提问,学会了在 AI 面前诚实地承认自己的无知,学会了按捺住急躁的心态,一层一层地砌砖。
React 和 Next.js 只是我用这套方法驯服的第一批猛兽。在这场战役中,我斩获的最宝贵的资产,是那种“哪怕明天前端圈又整出个完全陌生新框架,我也能气定神闲地把它解构并吃透”的底气。
如果能坐时光机回到两个月前,重新开始学 React,有几个原则我一定会死死焊在脑子里,哪怕少踩一个坑,我的学习曲线也能平滑得多。
坚决拒绝宏大的宽泛提问千万不要问“什么是 useState”。这种偷懒的提问只会换来 AI 从百度百科或者维基百科里抄来的套话。从第一天开始,就要学会具体化:“请用大白话和最生活化的例子,告诉我 useState 解决的核心痛点是什么。”
切忌贪多求快,拒绝信息过载不要试图在第一天就让 AI “把 React 和 Next.js 揉在一起给我讲个明白”。饭要一口口吃,逻辑要一层层剥。今天把
useState 的心智模型建立好,明天再去碰
useEffect,后天再聊服务端组件。步子迈得太大,不仅容易扯到蛋,还容易直接被信息垃圾劝退。
代码跑通不等于你懂了,严禁盲目复制在初期,看着满屏报错,我们太容易妥协了——直接把 AI 吐出来的修复代码一键复制粘贴,看到控制台不报错了就拍拍屁股走人。相信我,出来混迟早是要还的。能跑通的代码不代表变成了你自己的知识。在把任何一段 AI 代码塞进你的项目前,必须强迫自己回答三个问题:这行代码的职责是什么?它为什么会出现在这里?它帮我干掉了什么 Bug?
永远保持必要的批判性思维AI 确实是个全知全能的劳模,但它不是神,它偶尔也会一本正经地胡说八道。它会给你推荐三年多以前的过时写法,会把简单的逻辑故意写得无比臃肿,甚至会选择性忽略你之前给它的部分 Context。遇到核心的架构设计或者古怪的底层逻辑,一定要去和官方文档做交叉验证。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/394591/viewspace-3172247/ ,如需转载,请注明出处,否则将追究法律责任。