首頁 web前端 js教程 如何使用 Dualite 建立登陸頁面

如何使用 Dualite 建立登陸頁面

Sep 12, 2024 pm 10:30 PM

我花了幾個小時創建登陸頁面的Figma設計。每種顏色都恰到好處,每個像素都就位,並且具有無縫的用戶流程,但現在是實際編碼此登陸頁面的令人畏懼的部分。

建造 Figma 設計是一項艱鉅的任務。這就是我了解 Dualite 的地方,它使用 AI 將 Figma 設計轉化為實際程式碼,幫助像我這樣的開發人員最大限度地減少實際編碼的工作量。讓我們看看我如何使用 Dualite 將我的登陸頁面轉換為實際程式碼
 

什麼是雙石?

Dualite 是一款創新的人工智慧 Figma 插件,旨在彌合設計和開發之間的差距。它專注於將 Figma 設計轉換為高品質、可重複使用的程式碼,並支援 Reactjs、TailwindCSS 等流行技術。

Dualite 讓您只需單擊即可將任何Figma 設計或動畫轉換為高效的程式碼,您可以根據您的專案進行自訂,它具有令人興奮的功能,讓我對它們進行總結:

  • 模式:Dualite 提供兩種模式,元件模式和頁面模式,非常適合開發人員和設計人員將其設計轉換為產生的程式碼。這些模式可確保佈局、互動性、動畫等從設計準確地轉換為程式碼。
    • 元件模式:專注於單獨的設計元素,允許建立可重複使用的元件。
    • 頁面模式:轉換整個頁面,保持整體佈局和結構。
    • 在此部落格上了解有關模式的更多信息
  • 進階功能
    • Dualite 提供高級設置,用戶可以在其中提供有關其設計的更多技術資訊。這可確保產生的程式碼響應靈敏且準確。
    • 這些進階設定為設計人員和開發人員提供了更多功能,使他們能夠自訂輸出以滿足特定的專案要求。此功能對於需要精確控制最終程式碼的複雜設計特別有用,例如響應式佈局或複雜的動畫。 要快速開始使用 Dualite,您可以關注他們的文件

Figma設計

讓我們開始登陸頁面的Figma設計,如下:
How to Build A Landing Page with Dualite

所以,Dualite 有一個模式功能,您可以在頁面模式和元件模式之間切換

基本上,頁面模式用於一次性轉換完整的設計,組件模式用於創建單獨的組件,我們可以將其集成到我們的項目中,在文檔中了解有關組件的更多信息

我們將使用元件模式為設計中存在的所有元件產生程式碼,然後將它們整合到一個專案中

讓我們從將登陸頁面分割為元件開始,如下所示:
How to Build A Landing Page with Dualite

初始項目設定

我將在 Dualite 中使用 Reactjs 和 Tailwind 來產生程式碼,所以讓我們先設定專案:

  • Reactjs App:使用 Vite 或任何其他工具建立 React 應用程式。 Vite 是創建 Javascript 應用程式的熱門選擇
  • 設定 Tailwind:依照 Tailwind 文件在 Reactjs 應用程式中設定 tailwind,不會出現任何不必要的錯誤。確保新增依賴項,例如 PostCSS 和 autoprefixer,以實現順利的 Tailwind 設定。
  • 設定檔:在專案根目錄下建立tailwind.config.js和postcss.config.css。如果您按照 Tailwind 文件中的所有步驟進行操作,則可能會出現 tailwind.config.js。如果已經存在,則相應更新
  • 使用 Javascript:到目前為止,Dualite 不支援 Typescript,因此,請確保僅使用 Javascript 建立 Reactjs 應用程式

開始在 Dualite 中轉換元件

初始設定:

  • 模式:我們將使用組件模式。使用右上角的切換按鈕在頁面模式和元件模式之間切換
  • 框架:當您選擇要轉換為程式碼的設計時,您將看到多種語言和框架選項。我將使用 Reactjs 和 Tailwind 來產生程式碼。
  • 要快速開始使用 Dualite,請閱讀此內容

現在,讓我們開始將設計轉換為元件:

  1. 公告欄元件:在此檢查產生的程式碼
     

  2. 導覽列組件:在此處檢查產生的程式碼
     

  3. 類別過濾元件:在此檢查產生的程式碼
     

  4. Card Component 元件:在此檢查產生的程式碼
     

  5. 分頁元件:在此檢查產生的程式碼
     

  6. 頁腳組件:在此處檢查產生的程式碼
     

客製化

  1. 複製組件:
    • 現在,從上面生成的所有程式碼複製 Components 資料夾並將其貼上到專案的元件資料夾中
    • 您可能已經注意到,所有元件的名稱都只是“Component”,所以讓我們相應地命名所有元件。範例:公告欄元件將命名為「AnnouncementBar」。在這裡檢查我是如何做到的
  2. 渲染所有元件:
    • 現在,根據App.jsx檔案中的設計導入所有元件
    • 運行項目,你將看到輸出,檢查這裡的App.jsx文件
    • 您可能已經注意到,有些元件需要修復。讓我們從客製化開始
  3. 修復組件樣式:
    • 字體
      • 正如您在設計中看到的,我們有自己的字體。將它們新增至資產資料夾中,以便我可以在專案中的任何位置使用該字體。
      • 還需要為我們在存在 Tailwind 指令的 index.css 檔案中使用的所有字體建立 @font-face
    • 導覽列組件
      • 版面不準確,樣式需要修復
    • 卡片組件
      • 星形圖示:在圖形資料夾內新增星形圖示
      • Text.js:更新了 Text.js 檔案以修復元件的按鈕標籤和其他文字
      • 樣式:更新樣式以將字體粗細添加到特定文字元素和按鈕標籤
    • 卡片組件邏輯
      • Card 元件僅渲染單一元件,因為它只是單一元件。
      • 要渲染多個卡片元件,我必須添加一些演示資料來映射它並渲染多個卡片

注意:所有變更和程式碼都可以在 CodeSandBox 上查看

輸出

一旦我在專案中進行了所有這些自訂和更改,我就可以看到更好的設計版本,請在此處檢查程式碼和輸出

Dualite 有幫助嗎?

讓我們正確理解一下,我們使用Dualite 生成的所有組件都可以使用了,是的,我們對程式碼進行了一些自定義,使其與設計看起來一樣接近,儘管如此,組件的所有樣式,都組件的層次結構以及單獨檔案中的資料由Dualite 產生。

我可以使用 Dualite 來建立 UI,而不是花太多時間。

與手動編碼相比,這需要足夠長的時間。所有組件的輸出都非常好,沒有什麼可以 100% 正確,每個程式碼都需要開發人員進行最後的修改,這就是我們在這裡所做的

是的,Dualite 在為我的元件產生程式碼方面非常有幫助且快速。

結論

現在你已經有了它,這是一種用很少的手動編碼產生 Figma 設計程式碼的有效方法。實際編碼設計的過程就像坐過山車一樣,如果您使用 Dualite 並根據您的需求和專案自訂程式碼,這可能會不那麼複雜。

以上是如何使用 Dualite 建立登陸頁面的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Laravel 教程
1602
29
PHP教程
1504
276
如何在node.js中提出HTTP請求? 如何在node.js中提出HTTP請求? Jul 13, 2025 am 02:18 AM

在Node.js中發起HTTP請求有三種常用方式:使用內置模塊、axios和node-fetch。 1.使用內置的http/https模塊無需依賴,適合基礎場景,但需手動處理數據拼接和錯誤監聽,例如用https.get()獲取數據或通過.write()發送POST請求;2.axios是基於Promise的第三方庫,語法簡潔且功能強大,支持async/await、自動JSON轉換、攔截器等,推薦用於簡化異步請求操作;3.node-fetch提供類似瀏覽器fetch的風格,基於Promise且語法簡單

JavaScript數據類型:原始與參考 JavaScript數據類型:原始與參考 Jul 13, 2025 am 02:43 AM

JavaScript的數據類型分為原始類型和引用類型。原始類型包括string、number、boolean、null、undefined和symbol,其值不可變且賦值時復制副本,因此互不影響;引用類型如對象、數組和函數存儲的是內存地址,指向同一對象的變量會相互影響。判斷類型可用typeof和instanceof,但需注意typeofnull的歷史問題。理解這兩類差異有助於編寫更穩定可靠的代碼。

過濾JavaScript中的一系列對象 過濾JavaScript中的一系列對象 Jul 12, 2025 am 03:14 AM

JavaScript中filter()方法用於創建一個包含所有通過測試元素的新數組。 1.filter()不修改原數組,而是返回符合條件元素的新數組;2.基本語法為array.filter((element)=>{returncondition;});3.可按屬性值過濾對像數組,如篩選年齡大於30的用戶;4.支持多條件篩選,例如同時滿足年齡和名字長度條件;5.可處理動態條件,將篩選參數傳入函數以實現靈活過濾;6.使用時注意必須返回布爾值,避免返回空數組,以及結合其他方法實現字符串匹配等複雜邏

如何檢查數組是否在JavaScript中包含一個值 如何檢查數組是否在JavaScript中包含一個值 Jul 13, 2025 am 02:16 AM

在JavaScript中檢查數組是否包含某個值,最常用方法是includes(),它返回布爾值,語法為array.includes(valueToFind),例如fruits.includes('banana')返回true;若需兼容舊環境,則使用indexOf(),如numbers.indexOf(20)!==-1返回true;對於對像或複雜數據,應使用some()方法進行深度比較,如users.some(user=>user.id===1)返回true。

JavaScript上下文中解釋的虛擬DOM的概念 JavaScript上下文中解釋的虛擬DOM的概念 Jul 12, 2025 am 03:09 AM

虛擬DOM是一種優化真實DOM更新的編程概念,通過在內存中創建與真實DOM對應的樹形結構,避免頻繁直接操作真實DOM。其核心原理是:1.數據變化時生成新的虛擬DOM;2.對比新舊虛擬DOM找出最小差異;3.批量更新真實DOM以減少重排重繪開銷。此外,使用唯一穩定key可提升列表對比效率,而部分現代框架已採用其他技術替代虛擬DOM。

在異步/等待JavaScript函數中處理錯誤 在異步/等待JavaScript函數中處理錯誤 Jul 12, 2025 am 03:17 AM

處理異步函數中的錯誤應使用try/catch、在調用鏈中處理、使用.catch()方法、並監聽unhandledrejection事件。 1.使用try/catch捕獲錯誤是推薦方式,結構清晰且能處理await中的異常;2.在調用鏈中處理錯誤可集中邏輯,適合多步驟流程;3.使用.catch()可在調用async函數後捕獲錯誤,適用於Promise組合場景;4.監聽unhandledrejection事件可記錄未處理的rejection,作為最後一道防線;以上方法共同確保異步錯誤被正確捕獲和處理。

如何處理JavaScript中的時區? 如何處理JavaScript中的時區? Jul 11, 2025 am 02:41 AM

處理JavaScript時區問題的關鍵在於選擇合適的方法。 1.使用原生Date對象時,推薦以UTC時間進行存儲和傳輸,並在展示時轉換為用戶本地時區;2.對於復雜時區操作,可使用moment-timezone,它支持IANA時區數據庫並提供便捷的格式化與轉換功能;3.若需本地化顯示時間且不想引入第三方庫,可使用Intl.DateTimeFormat;4.推薦現代輕量方案day.js配合timezone和utc插件,其API簡潔、性能良好並支持時區轉換。

什麼是功能編程?核心概念的JS綜述 什麼是功能編程?核心概念的JS綜述 Jul 11, 2025 am 03:13 AM

功能程序injavascriptemplosize cleansclean,precedableCodEthroughCoreConcepts.1.purefunctionsConsisterlyTurnTheSameOutTunthesMeTputputputputputputputputsefts.2.mmutability and prodicatient.2.mmutabilityabilitietyavoidsdatamodificationbybydatamodificationbybydatamodificationbybydatamodificationbybycreatingnewdatacopies,red red

See all articles