日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

Vercel推出的前端AI工具v0,會改變前端么?

來源: 責編: 時間:2023-09-18 21:40:20 376觀看
導讀大家好,我卡頌。最近,Vercel推出了一款AI代碼生成工具 —— v0[1],可以快速生成前端組件代碼。這款AI工具會影響現有前端開發模式么?本文會從如下角度展開討論:v0是什么?能做什么?v0生成的代碼包含哪些部分?會對現有前端開發

DSf28資訊網——每日最新資訊28at.com

大家好,我卡頌。DSf28資訊網——每日最新資訊28at.com

最近,Vercel推出了一款AI代碼生成工具 —— v0[1],可以快速生成前端組件代碼。DSf28資訊網——每日最新資訊28at.com

這款AI工具會影響現有前端開發模式么?本文會從如下角度展開討論:DSf28資訊網——每日最新資訊28at.com

  • v0是什么?能做什么?
  • v0生成的代碼包含哪些部分?會對現有前端開發產生什么影響?

v0是什么

v0是Vercel推出的一款「前端組件代碼生成工具」,當前還處于Alpha階段,要想試用需要先排隊。DSf28資訊網——每日最新資訊28at.com

他的使用方式如下:DSf28資訊網——每日最新資訊28at.com

首先,用自然語言描述需求。DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

v0會根據需求生成組件代碼:DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

我們可以繼續對不滿意的地方提出修改意見,比如「背景請使用漸變藍色」:DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

此時,會生成一個新的版本(這里是v1)。具體來說,每個修改意見都會產生一個新的版本。當我們再提出 —— 「內容寬度為500px」,此時會產生v2:DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

現在你明白這款產品為什么叫v0了吧?v0指產品的最初版本,開發者可以基于v0不斷迭代新的版本。而迭代的方式,就是不斷提出新需求或修改意見。DSf28資訊網——每日最新資訊28at.com

有同學可能會問:我直接向chatGPT提需求不也能生成代碼,v0有啥優勢?DSf28資訊網——每日最新資訊28at.com

v0的優勢主要體現在兩點:DSf28資訊網——每日最新資訊28at.com

  • 可以針對組件不同部分單獨修改。
  • UI與樣式分離。

讓我們細細聊一下。DSf28資訊網——每日最新資訊28at.com

可以針對組件不同部分單獨修改

如果直接讓chatGPT生成代碼,那么他會生成一大段代碼。比如,我讓chatGPT生成上面提到的天氣預報組件。下面截取了他返回代碼的一部分,注意其中紅框中組件背景色是白色:DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

現在,我繼續提問:「背景請使用漸變藍色」,chatGPT重新輸出了組件代碼,并把背景色改為漸變藍色:DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

可以看到,每次提出修改意見,chatGPT都得重新生成完整代碼,比較低效。DSf28資訊網——每日最新資訊28at.com

那我只讓chatGPT輸出修改部分的代碼呢?比如這樣提問 —— 「內容寬度為500px,只給出修改的代碼」。DSf28資訊網——每日最新資訊28at.com

他確實只輸出了需要修改的代碼:DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

但這樣也存在一個弊端 —— 當應用龐大時,需要讓chatGPT知道我們想修改哪部分代碼。DSf28資訊網——每日最新資訊28at.com

比如下面是個郵箱收集頁面,現在我們希望將標題改為漸變色。當我們向chatGPT提到「標題」時,他能理解指的是郵箱收集頁的標題。DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

但當應用變得復雜,存在很多「帶標題的組件」,讓chatGPT理解你的需求就得費一番功夫了。DSf28資訊網——每日最新資訊28at.com

使用v0就沒有這方面困擾。我們可以對v0生成頁面中的每個組件、每個元素單獨提問。比如,對于上述「將郵箱收集頁標題改為漸變色」的需求,首先用v0生成郵箱收集頁。DSf28資訊網——每日最新資訊28at.com

現在我們希望將標題改為漸變色,只需要選擇標題部分并提出「增加一個漸變色」:DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

就能得到如下結果:DSf28資訊網——每日最新資訊28at.com

DSf28資訊網——每日最新資訊28at.com

即使再復雜的頁面,在提問時,v0會將組件對應的上下文一并發送給大模型,模型能清楚知道要修改哪個組件。DSf28資訊網——每日最新資訊28at.com

UI與樣式分離

v0生成的React組件代碼中,樣式與UI分別基于兩個庫:DSf28資訊網——每日最新資訊28at.com

  • 樣式:基于TailwindCSS
  • UI:基于shadcn[2]

樣式部分

為什么生成代碼的樣式部分要使用TailwindCSS呢?DSf28資訊網——每日最新資訊28at.com

在我上一篇講TailwindCSS的文章中我提到一個觀點 —— 隨著AI生成代碼的普及,類似TailwindCSS這樣的「原子化CSS」會越來越普及。DSf28資訊網——每日最新資訊28at.com

這是因為,在有限的未來,大模型輸出的token限制還會一直存在,而「原子化CSS」相比「語義化CSS」能用更少的字符表達更豐富的樣式信息。DSf28資訊網——每日最新資訊28at.com

這里有兩層意思,首先來看比較好理解的,對比下面兩段代碼:DSf28資訊網——每日最新資訊28at.com

「原子化CSS」的實現:DSf28資訊網——每日最新資訊28at.com

<div class="m-1"></div>

「語義化CSS」的實現:DSf28資訊網——每日最新資訊28at.com

<div class="container"></div>
.container {  margin: 0.25rem;}

顯然,從大模型的字符輸出消耗來看,「原子化CSS」能用更少字符表達同樣的樣式。DSf28資訊網——每日最新資訊28at.com

第二層意思,「原子化CSS」(不管是TailwindCSS還是UnoCSS)都是基于設計系統的上層封裝。上述m-1的類名背后,并不僅僅是margin: 0.25rem的意思,而是與其他類名一起構成的設計系統。DSf28資訊網——每日最新資訊28at.com

當整個應用都是基于設計系統實現時,整體來看,達到同樣的布局效果,也會更省大模型的字符輸出消耗。DSf28資訊網——每日最新資訊28at.com

UI部分

v0的UI部分非常有意思,他基于shadcn這個“組件”庫。DSf28資訊網——每日最新資訊28at.com

為什么要給「組件」打引號,因為shadcn與一般的組件庫完全不同。DSf28資訊網——每日最新資訊28at.com

對于一般的組件庫,我們先通過npm安裝它,將它作為項目的依賴,再在項目中引入。DSf28資訊網——每日最新資訊28at.com

比如,下面是引入antd中Calendar組件的方式:DSf28資訊網——每日最新資訊28at.com

import { Calendar } from 'antd';const App: React.FC = () => {  return <Calendar />;};

下面是引入shadcn中Calendar組件的方式,對比看看有啥區別?DSf28資訊網——每日最新資訊28at.com

import { Calendar } from "@/components/ui/calendar"const App: React.FC = () => {  return <Calendar />;};

antd中的Calendar來自于antd模塊,而shadcn中的Calendar則來自于項目目錄下的components目錄。DSf28資訊網——每日最新資訊28at.com

這就是shadcn的理念 —— 0依賴,按需復制粘貼代碼。DSf28資訊網——每日最新資訊28at.com

簡單來說,如果你想使用shadcn中的某個組件,不是通過npm安裝shadcn這個包,再引入組件。而是直接復制該組件的代碼到項目目錄下(當然,整個復制過程是通過cli工具完成的)。DSf28資訊網——每日最新資訊28at.com

這么做相比于傳統組件庫,有兩個顯著優勢:DSf28資訊網——每日最新資訊28at.com

組件邏輯想改就改,不用擔心組件沒暴露對應的props。DSf28資訊網——每日最新資訊28at.com

畢竟,整個組件的源代碼我們都直接復制下來了,改個邏輯還不簡單?DSf28資訊網——每日最新資訊28at.com

UI與樣式分離DSf28資訊網——每日最新資訊28at.com

復制下來的組件只包含基礎樣式,開發者根據需要增加自定義樣式。DSf28資訊網——每日最新資訊28at.com

總結

了解了v0能做什么,以及輸出代碼的組成后,我們可以得出結論 —— v0是一款快速生成項目原型代碼的AI工具。生成的原型代碼中,UI與樣式分離,其中:DSf28資訊網——每日最新資訊28at.com

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

UI部分之所以基于shadcn,顯然是為了開發者導出代碼后,可以方便的二次開發。DSf28資訊網——每日最新資訊28at.com

我們可以將v0當作一款應用場景更廣的低代碼工具,用于快速生成原型代碼。從這個角度看,他對前端的影響還局限在提效工具上(而不是替代前端)。DSf28資訊網——每日最新資訊28at.com

與其擔心v0會取代你的工作,不如擔心隔壁悄悄使用v0的同事比你工作效率來的更高......DSf28資訊網——每日最新資訊28at.com

參考資料

[1]v0:https://v0.dev/。DSf28資訊網——每日最新資訊28at.com

[2]shadcn:https://ui.shadcn.com/。DSf28資訊網——每日最新資訊28at.com

本文鏈接:http://m.www897cc.com/showinfo-26-10415-0.htmlVercel推出的前端AI工具v0,會改變前端么?

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 重新學習 scrollIntoview

下一篇: Java開發必安裝插件-Maven Helper

標簽:
  • 熱門焦點
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
亚洲欧美资源在线| 国产日产欧产精品推荐色| 久久五月激情| 麻豆国产精品一区二区三区| 狠狠久久综合婷婷不卡| 国产午夜精品视频| 亚洲第一在线视频| 99综合在线| 欧美一区二区三区视频免费播放| 久久精品欧洲| 欧美成人午夜影院| 国产精品九九久久久久久久| 狠狠色丁香久久婷婷综合_中| 亚洲国产精彩中文乱码av在线播放| 亚洲激情社区| 中文久久精品| 久久免费99精品久久久久久| 欧美日韩成人一区| 国产性猛交xxxx免费看久久| 亚洲破处大片| 欧美亚洲在线播放| 欧美激情小视频| 国产三区二区一区久久| 亚洲精品网站在线播放gif| 亚洲欧美在线观看| 欧美国产亚洲精品久久久8v| 国产女主播一区二区| 亚洲日本理论电影| 久久成人国产| 欧美日韩成人精品| 精品电影在线观看| 亚洲一区自拍| 欧美国产三区| 狠狠久久亚洲欧美| 亚洲欧美日韩一区二区三区在线观看 | a4yy欧美一区二区三区| 久久精品天堂| 国产精品电影在线观看| 亚洲激情一区二区| 欧美在线日韩精品| 欧美视频中文字幕在线| 91久久精品美女高潮| 久久精品麻豆| 国产精品中文在线| 亚洲午夜精品| 欧美美女视频| 亚洲高清自拍| 久久久久久亚洲精品中文字幕| 国产精品久久看| 日韩视频永久免费观看| 久久综合99re88久久爱| 国产欧美一区二区视频| 亚洲视频一区二区免费在线观看| 欧美3dxxxxhd| 激情综合色综合久久| 欧美亚洲综合久久| 国产精品普通话对白| 夜夜嗨av色一区二区不卡| 欧美电影在线观看| 亚洲第一天堂av| 久久久欧美精品| 国产欧美日韩| 香蕉成人伊视频在线观看| 国产精品成人一区二区三区夜夜夜 | 国产精品日韩专区| 日韩亚洲欧美一区| 欧美69wwwcom| 亚洲国内自拍| 另类av一区二区| 国内精品模特av私拍在线观看| 亚洲欧美日韩一区二区三区在线| 欧美日韩色一区| 99精品久久久| 欧美激情亚洲| 最新国产成人av网站网址麻豆 | 国产精品国产三级国产普通话99| 亚洲理伦电影| 欧美精品一区二区三区在线播放| 亚洲国产一区二区a毛片| 久久噜噜亚洲综合| 韩日精品中文字幕| 久久久久久伊人| 国内精品久久久久久久影视蜜臀| 欧美在线播放高清精品| 国产乱人伦精品一区二区| 亚洲欧美日韩国产中文| 欧美美女bb生活片| 一区二区三区视频观看| 欧美午夜一区二区| 亚洲一区二区三区激情| 国产精品草莓在线免费观看| 亚洲无亚洲人成网站77777 | 亚洲高清在线| 欧美大尺度在线| 亚洲精品色婷婷福利天堂| 欧美国产三区| 亚洲视频一区| 国产日本欧美在线观看| 久久国产日韩欧美| 一区二区三区在线视频观看 | 欧美福利视频一区| 日韩天堂在线视频| 欧美网站大全在线观看| 欧美亚州在线观看| 亚洲综合第一| 国产一区二区三区丝袜| 可以免费看不卡的av网站| 亚洲精品美女在线观看| 国产精品wwwwww| 久久av一区二区三区漫画| 在线欧美日韩精品| 欧美日韩国产小视频| 亚洲欧美春色| 激情文学综合丁香| 欧美日韩第一页| 亚洲欧美999| 伊人久久大香线蕉av超碰演员| 欧美成人精品在线观看| 亚洲天堂成人在线观看| 国产一区二区三区高清播放| 免费国产一区二区| 中文高清一区| 狠狠久久婷婷| 欧美日韩国产专区| 欧美一区激情| 亚洲黄一区二区三区| 国产精品美女www爽爽爽| 久久婷婷麻豆| 亚洲视屏在线播放| 黄色欧美日韩| 欧美日韩日本网| 久久精品国产亚洲精品| 亚洲免费观看视频| 国产亚洲激情| 欧美精品久久久久a| 亚洲欧美日韩国产一区二区三区| 在线欧美三区| 国产精品免费视频观看| 蜜桃av久久久亚洲精品| 亚洲一卡久久| 亚洲高清三级视频| 国产精品你懂的| 欧美电影电视剧在线观看| 亚洲欧美三级伦理| 亚洲欧洲日本在线| 国产亚洲激情| 国产精品对白刺激久久久| 美日韩精品视频免费看| 午夜精品亚洲一区二区三区嫩草| 亚洲激情视频在线| 国内免费精品永久在线视频| 国产精品sm| 欧美福利精品| 久久亚洲二区| 欧美在线地址| 亚洲午夜一二三区视频| 亚洲国产精品久久久久婷婷老年| 国产伦精品一区二区三区免费迷| 欧美精品一级| 老巨人导航500精品| 性色av一区二区三区| 99这里有精品| 亚洲电影天堂av| 国产一区三区三区| 欧美小视频在线| 欧美精品一区二区高清在线观看| 久久精品在线观看| 亚洲欧美在线一区二区| 9l视频自拍蝌蚪9l视频成人| 在线观看亚洲a| 国产一区二区av| 国产精品日韩专区| 欧美午夜不卡在线观看免费 | 欧美私人网站| 欧美日韩国产999| 欧美成ee人免费视频| 久久久久久欧美| 欧美在线视频观看| 午夜视频一区在线观看| 亚洲午夜在线视频| 99视频有精品| 亚洲另类自拍| 亚洲欧洲日韩在线| 亚洲国产精品专区久久| **欧美日韩vr在线| 伊人久久大香线| 在线国产精品播放| 伊人成年综合电影网| 影音国产精品| 在线成人激情黄色| 在线日韩欧美视频| 亚洲国产精品一区二区www| 在线观看成人网| 伊人成年综合电影网| 尤物yw午夜国产精品视频明星| 极品少妇一区二区三区| 国产在线视频欧美一区二区三区| 国产日韩专区在线| 国产一区二区中文字幕免费看| 国产欧美日韩一区二区三区在线观看| 国产精品久久网站| 国产精品一区二区女厕厕| 国产欧美va欧美va香蕉在| 国产欧美日韩精品一区|