vercel推出的前端ai工具,一句话生成前端页面

今天来介绍一个好用工具:v0

v0Vercel推出的一款**「前端组件代码生成工具」**

官方地址如下

v0 by Vercel

我们来进行一个体验

我给他输入下面的指令

Please build a music player

也就是构建一个音乐器。

可以看到他弄的这个还是比较简约的。

下面我又给了他优化建议

I think this is too minimalist. Could you please make it more colorful and imitate the style of NetEase Cloud Music

我觉得这个太过于简约了,请你给我弄的更加丰富多彩一点,并且模仿网易云音乐的风格

这个就是一个v1的优化版本

因为我平常不怎么写前端,也不知道该如何描述一些业务的具体,我这里看了看别人生成的东西

An ecommerce dashboard with a sidebar navigation and a table of recent orders. The side navigation should have 5 links Dashboard, Newsletters, Issues, Audience, Payments and billing. I need a sign in and register forms.

一个电子商务仪表板,带有侧边栏导航和最近订单表。侧面导航应该有5个链接仪表板,时事通讯,问题,受众,支付和计费。我需要一份登录和登记表。

可以发现他生成的是真的很厉害。

目前他是支持react和html的代码

这个时候有人可能会问,

他和chatgpt有多大的区别?

我认为有下面的区别

  1. 可以针对组件不同部分单独修改
  2. UI与样式分离

这里我最喜欢v0的功能就是他的可控性非常的强。

你可以单独选择一个组件进行优化迭代。

作为经常写后端的,对于前端不是很精确的人来说,

一个简单的页面,可控的页面管理,可以大大的提高开发的效率。

经过我的测试,大部分的业务上常见的界面,比如登录页,付款页,表格页等等。都是可以生成的不错的。

接下来说一下他生成的代码的一些详细。

v0生成的React组件代码中,样式与UI分别基于两个库:

  • 样式:基于TailwindCSS
  • UI:基于shadcn

TailwindCSS是一种原子化的css

他的工作原理是扫描所有 HTML 文件、JavaScript 组件以及任何 模板中的 CSS 类(class)名,然后生成相应的样式代码并写入 到一个静态 CSS 文件中。

原子化这个概念是近年来兴起的

截至目前已经有部分网站借鉴或者使用原子化CSS的思想重构了自己的web网站,比较知名的网站有Facebook、Twitter、Github、swipperjs等。根据网上公开的信息,Facebook在使用原子化CSS思想重构之后,仅登录页面的413KB样式文件,减少为整个站点的74KB。

当然这个东西我在这里不做过多的讨论,这个东西我觉得值得每一个开发者去自己实践一下,前期的学习成本肯定是有的,但是非常的方便。同时也有一些缺点,比如无法实现复杂效果 这个是我再自己使用的时候发现的一个问题

css 复制代码
/* 特殊伪元素 */
.list-item::before {
  content: counter(name);
}
​
/* 特殊伪类 */
.item:nth-child(n + 1) {
  color: red;
}
.item:nth-child(n + 2) {
  color: green;
}
.item:nth-child(n + 3) {
  color: blue;
}
​
/* 自定义动画 */
@keyframe boom {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(3);
  }
  100% {
    transform: scale(0);
  }
}

像这样一个简单的功能,用Tailwind就很难实现,当然也可能是我没找到如何实现。

对于这样的工具,我的看法就跟我看待chatgpt是一样的,他只是一个工具,无法完完全全的代替前端,与其担心会被代替,不如早点了解,早些使用,提高自己的开发效率。

相关推荐
YBN娜10 分钟前
Vue实现登录功能
前端·javascript·vue.js
阳光开朗大男孩 = ̄ω ̄=10 分钟前
CSS——选择器、PxCook软件、盒子模型
前端·javascript·css
一只爱打拳的程序猿12 分钟前
【Spring】更加简单的将对象存入Spring中并使用
java·后端·spring
minDuck15 分钟前
ruoyi-vue集成tianai-captcha验证码
java·前端·vue.js
小政爱学习!36 分钟前
封装axios、环境变量、api解耦、解决跨域、全局组件注入
开发语言·前端·javascript
魏大帅。41 分钟前
Axios 的 responseType 属性详解及 Blob 与 ArrayBuffer 解析
前端·javascript·ajax
花花鱼1 小时前
vue3 基于element-plus进行的一个可拖动改变导航与内容区域大小的简单方法
前端·javascript·elementui
k09331 小时前
sourceTree回滚版本到某次提交
开发语言·前端·javascript
EricWang13581 小时前
[OS] 项目三-2-proc.c: exit(int status)
服务器·c语言·前端
September_ning1 小时前
React.lazy() 懒加载
前端·react.js·前端框架