【AIGC】用 v0.dev 迭代开发一个极简版小红书前端,5 分钟搞定 1 天的工作量,会打字会截图就能开发网站

文摘   科技   2024-10-22 08:35   浙江  

兄弟们,今天我们来介绍 v0.dev这是一个 AI 前端代码生成工具,一句话、一张图就可以帮你生成各种前端页面或组件。我们将在本文介绍如何使用它来模拟实际项目的迭代开发,并部署项目给大家试用,以及分享全部提示词和源代码。

本教程视频版本可以直接观看:

1、20 秒完成飞机大战/俄罗斯方块开发

v0.dev 这工具好用吗?

我们可以先想一个问题:让你开发一个网页版的飞机大战游戏,你要多久?

反正有了 v0.dev,我一个前端新手只要 20 秒:

  • 第一步,在浏览器打开 https://v0.dev/chat
  • 第二步,在输入框输入帮我生成一个飞机大战游戏,回车。

就这!手速快的兄弟还能更快。不信你可以直接用下面链接玩一下试试:

https://b_2LO7jvhXtW8.v0.build/

飞机大战

飞机大战没有美工,画面有点简陋,但是功能是没毛病的。照这样来看,再撸一个俄罗斯方块也不在话下吧,说干就干:在输入框输入帮我生成一个俄罗斯方块游戏,回车。分分钟就出来了:

俄罗斯方块

同样的,可以试玩用下面的链接玩一下试试:

https://b_nF2QrBEQbMQ.v0.build/

看到这里,我们夸 v0.dev 一句「5 分钟搞定 1 天的工作量,颠覆传统前端开发」不为过吧?

2、迭代开发一个极简版小红书前端

有的朋友看到这里,可能会说 v0.dev 看起来是很厉害,不过开发上面这种简单的游戏,需求都比较简单明确,而现实开发中,需求是迭代且多变的,它能胜任吗?

接下来,我们就来逐步给大家展示如何使用 v0.dev 迭代开发一个极简版小红书的前端页面。看看它到底功力如何?

2.1、主体页面

第一步,我们打开小红书页面,给它截个图:

小红书页面截图

第二步,打开 v0.dev,将刚才的截图拖入对话框来上传,然后输入提示词:

请使用 react 将上图转化为前端页面代码。

开始生成页面代码。

主体页面提示词

等待代码生成完成,我们点击放大就可以直接看到页面效果了。

主体页面

可以看到这里生成的页面基本上还原了我们刚才截图的页面结构,但是各种按钮还不支持点击,内容则是使用占位图和占位文案。

2.2、侧边栏

我们接着输入新的提示词来修改:

将侧边栏按顺序改为:探索、订阅、我的。并且,点击“订阅”和“我的”tab时,内容区域更新内容为“目前内容为空”。
侧边栏提示词

等待代码重新生成完成,我们就得到了 v2 版本的页面

可以看到侧边栏的 tab 已经可以点击并且更新对应内容,但是顶部内容分类还不支持点击,我们来继续迭代修改。

侧边栏

2.3、内容分类栏

我们继续输入新的提示词:

修改“推荐”、“教育”这个区域对应的内容分类 tab 栏,当内容区域向上滚动时,该区域保持吸顶不动。
内容分类栏吸顶提示词

这样给顶部分类栏增加了吸顶功能。

接着,我们通过提示词来增加分类栏的点击功能:

修改“推荐”、“教育”这个区域对应的内容分类 tab 栏,当点击不同 tab 时更新内容区的卡片内容,并更新 tab 的样式为选中状态。
内容分类栏点击提示词

这次我们可以看到,顶部分类栏已经支持点击并更新对应内容了。可见,v0.dev 准确地理解并实现了我们的需求。

内容分类栏

2.4、分页加载

分页加载和滚动加载更多内容是很多内容平台的基本功能,我们这里当然也需要。

接下来,我们通过提示词为内容区增加分页加载功能:

修改内容区加载数据的逻辑,支持分页加载。当页面向上滚动时,自动加载更多内容。
分页加载提示词

这次 v0.dev 依然准确的实现了我们的需求,我们的页面获得了分页加载更多内容的能力。

分页加载

2.5、订阅页

现在,「订阅」和「我的」页面还是空的,接下来,我们给它们增加内容。

我们继续输入提示词:

修改点击“订阅” tab 后对应的内容区域,内容为卡片,样式风格和“探索” tab 对应的内容区域类似,同时也支持分页加载,当页面向上滚动时,自动加载更多内容。
订阅页提示词

这次依然很顺利的实现了我们的需求,「订阅」tab 有了内容并支持分页加载。

订阅页

2.6、我的页

接下来,我们给「我的」tab 增加内容。我们输入提示词:

修改点击“我的”tab后对应的内容区域,内容为列表样式,包括:账户信息、订阅状态、隐私政策、使用条款、联系我们、退出账户、删除账户栏目。
我的页提示词

打开页面可以看到「我的」tab 已经增加了相应的内容,但是这里出现了一个小问题:页面底部多了一个不需要的「加载中」的文案。

我的页

2.7、修 bug

我们通过提示词来修复这个问题:

修改点击“我的” tab 后对应的内容区域,这里的内容区域不需要分页加载和加载更多的功能。
修 bug 提示词

重新生成代码后,我们可以看到,这个问题已经被解决。

修 bug

2.8、提示词、试用、源码

所有提示词:

请使用 React 将上图转化为前端页面代码。

将侧边栏按顺序改为:探索、订阅、我的。并且,点击“订阅”和“我的”tab时,内容区域更新内容为“目前内容为空”。

修改“推荐”、“教育”这个区域对应的内容分类 tab 栏,当内容区域向上滚动时,该区域保持吸顶不动。

修改“推荐”、“教育”这个区域对应的内容分类 tab 栏,当点击不同 tab 时更新内容区的卡片内容,并更新 tab 的样式为选中状态。

修改内容区加载数据的逻辑,支持分页加载。当页面向上滚动时,自动加载更多内容。

修改点击“订阅”tab后对应的内容区域,内容为卡片,样式风格和“探索”tab对应的内容区域类似,同时也支持支持分页加载,当页面向上滚动时,自动加载更多内容。

修改点击“我的”tab后对应的内容区域,内容为列表样式,列表行数固定,包括:账户信息、订阅状态、隐私政策、使用条款、联系我们、退出账户、删除账户栏目。

修改点击“我的”tab后对应的内容区域,这里的内容区域不需要分页加载和加载更多的功能。

极简小红书 v8 版本代码:

你可以使用下面的链接试用一下这个极简版小红书,通过页面的 Fork 功能就能获得页面全部源码:

https://b_aOrYvbeSudq.v0.build/

3、小结

到这里,我们这个教程就告一段落了。

可以看到,v0.dev 通过对话方式支持了开发迭代,每个迭代它都会生成新版本的代码,可以方便大家回溯,因此能够很好地应对实际开发中的需求变化。

以前可能需要一个前端开发 1 天工作量的需求,在 v0.dev 的帮助下,几分钟就能搞定了。

当然,有的朋友可能会说:生成的代码是单文件,根本没考虑项目架构设计;代码没有接入后端服务接口,只能算是个 demo 而已。这些问题,我们将在后续的教程中解决。为了保持联系,不妨关注一下我们:

谢谢大家的阅读,教程对你有用的话,记得点赞、收藏、关注哦,下次见。

关键帧Keyframe
系统性地探索音视频、AIGC、区块链技术。
 最新文章