React - 資料驅動建立版型

更新 發佈閱讀 10 分鐘
此筆記僅以個人理解方式記錄

環境準備

我們這邊以 Bootstrap 5 的卡片元件來展示,要準備的有:

  1. Bootstrap 5 CDN
  2. Card(卡片) template
  3. React CDN


React

React 起手式,引用 CDN、綁定 root、指定渲染 dom。

<!-- 第一 載入 React / babel -->
<script crossorigin src="https://unpkg.com/react@18/umd/react.development.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@18/umd/react-dom.development.js"></script>

<!-- 第二 設定 text/babel -->
<script src="https://unpkg.com/@babel/standalone/babel.min.js"></script>
<div id="root"></div>

<script type="text/babel">

// 建立 React App 元件
function App(params) {
return <h1>React 哈囉 ~</h1>
}

// 渲染 React 元件
const dom = document.getElementById('root');
const root = ReactDOM.createRoot(dom);

root.render(<App />);

</script>


Bootstrap 5

引用 CDN、獲取 Card 模板、

// CSS
// 將樣式表 <link> 複製-貼上到 <head> 中其他所有的樣式表之前,以便載入 Bootstrap 的CSS
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-wEmeIV1mKuiNpC+IOBjI7aAzPcEZeedi5yW5f2yOq55WWLwNGmvvx4Um1vskeMj0" crossorigin="anonymous">

// JS
// 我們的許多元件需要使用 JavaScript 才能運行。具體來說,他們需要我們自己的 JavaScript 插件和 Popper。在 </body> 結尾標籤前、頁面的末尾放置 以下 <script> 以啟用它們。
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-p34f1UUtsS3wqzfto5wAAmdvj+osOnFyQFpp4Ua3gs/ZVWx6oOypYoCJhGGScy+8" crossorigin="anonymous"></script>

// Bundle
// 使用我們兩個 bundle 中的其中一個來嵌入所有的 Bootstrap JavaScript 插件。
// bootstrap.bundle.js 和 bootstrap.bundle.min.js 都包含了 Popper 以使用我們的工具提示 (Tooltips) 和彈出提示框 (Popovers)。
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-p34f1UUtsS3wqzfto5wAAmdvj+osOnFyQFpp4Ua3gs/ZVWx6oOypYoCJhGGScy+8" crossorigin="anonymous"></script>

// 分離 (Separate)
// 如果決定使用分離的腳本作為解決方案,則需要先放入 Popper (如果你使用工具提示或是彈出提示框),
// 然後再放入我們的 JavaScript 插件。
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.2/dist/umd/popper.min.js" integrity="sha384-IQsoLXl5PILFhosVNubq5LC7Qb9DXgDA9i+tQ8Zj3iwWAwPtgFTxbJ8NT4GN1R8p" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0/dist/js/bootstrap.min.js" integrity="sha384-lpyLfhYuitXl2zRZ5Bn2fqnhNAKOAaM/0Kr9laMspuaMiZfGmfwRNFh8HlMy49eQ" crossorigin="anonymous"></script>
<div className="card" style={{ width: '18rem' }}>
<img src={data.imageUrl} className="card-img-top" alt="..." />
<div className="card-body">
<h5 className="card-title">{data.title}</h5>
<p className="card-text">{data.content}</p>
<a href={data.link} className="btn btn-primary">卡片連結</a>
</div>
</div>
其餘更詳細介紹飲用及元件,可至 六角學院翻譯 查閱


組合起來

<!-- 🔥🔥練習開始🔥🔥 -->
<div id="root"></div>

<!-- template:https://getbootstrap.com/docs/5.2/components/card/ -->
<script type="text/babel">
function App(params) {
const data = {
imageUrl: "https://plus.unsplash.com/premium_photo-1714051661301-860c930a2c85?q=80&w=1170&auto=format&fit=crop&ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D",
title: "card title",
content: "卡片內容",
link: "https://www.google.com.tw/"
};

return (
<div className="card" style={{ width: '500px' }}>
<img src={data.imageUrl} style={{ width: '100%' }} className="card-img-top" alt="..." />
<div className="card-body">
<h5 className="card-title">{data.title}</h5>
<p className="card-text">{data.content}</p>
<a href={data.link} className="btn btn-primary">卡片連結</a>
</div>
</div>)
}
const el = document.getElementById('root');
const root = ReactDOM.createRoot(el);

root.render(<App />);
raw-image


由於被 React 監控了,當然黨照著它的規矩走,我們得佐以下更改

  1. root.render(<App />); 要有 / 結尾
  2. class -> className
  3. style -> { 屬性 } 包裹住


結尾

這樣就從環境引用 -> 版型建立 -> 組合,有成功渲染就表示成功了哦,如果失敗就要注意上面所提到的 React 規則、檢查資源、語法結構等等...。本篇就到此結束,祝各位學習順利 ~~~


-joker

-2024/10/19

留言
avatar-img
留言分享你的想法!
avatar-img
Joker Cat
4會員
21內容數
是一隻喜愛前端勇往直前的霹靂酷樂貓
你可能也想看
Thumbnail
透過蝦皮分潤計畫,輕鬆賺取零用金!本文分享5-6月實測心得,包含數據流程、實際收入、平臺優點及注意事項,並推薦高分潤商品,教你如何運用空閒時間創造被動收入。
Thumbnail
透過蝦皮分潤計畫,輕鬆賺取零用金!本文分享5-6月實測心得,包含數據流程、實際收入、平臺優點及注意事項,並推薦高分潤商品,教你如何運用空閒時間創造被動收入。
Thumbnail
單身的人有些會養寵物,而我養植物。畢竟寵物離世會傷心,植物沒養好再接再厲就好了~(笑)
Thumbnail
單身的人有些會養寵物,而我養植物。畢竟寵物離世會傷心,植物沒養好再接再厲就好了~(笑)
Thumbnail
不知你有沒有過這種經驗?衛生紙只剩最後一包、洗衣精倒不出來,或電池突然沒電。這次一次補貨,從電池、衛生紙到洗衣精,還順便分享使用心得。更棒的是,搭配蝦皮分潤計畫,愛用品不僅自己用得安心,分享給朋友還能賺回饋。立即使用推薦碼 X5Q344E,輕鬆上手,隨時隨地賺取分潤!
Thumbnail
不知你有沒有過這種經驗?衛生紙只剩最後一包、洗衣精倒不出來,或電池突然沒電。這次一次補貨,從電池、衛生紙到洗衣精,還順便分享使用心得。更棒的是,搭配蝦皮分潤計畫,愛用品不僅自己用得安心,分享給朋友還能賺回饋。立即使用推薦碼 X5Q344E,輕鬆上手,隨時隨地賺取分潤!
Thumbnail
身為一個典型的社畜,上班時間被會議、進度、KPI 塞得滿滿,下班後只想要找一個能夠安靜喘口氣的小角落。對我來說,畫畫就是那個屬於自己的小樹洞。無論是胡亂塗鴉,還是慢慢描繪喜歡的插畫人物,那個專注在筆觸和色彩的過程,就像在幫心靈按摩一樣,讓緊繃的神經慢慢鬆開。
Thumbnail
身為一個典型的社畜,上班時間被會議、進度、KPI 塞得滿滿,下班後只想要找一個能夠安靜喘口氣的小角落。對我來說,畫畫就是那個屬於自己的小樹洞。無論是胡亂塗鴉,還是慢慢描繪喜歡的插畫人物,那個專注在筆觸和色彩的過程,就像在幫心靈按摩一樣,讓緊繃的神經慢慢鬆開。
Thumbnail
此筆記僅以個人理解方式記錄 環境準備 我們這邊以 Bootstrap 5 的卡片元件來展示,要準備的有: Bootstrap 5 CDN Card(卡片) template React CDN React React 起手式,引用 CDN、綁定 root、指定渲染 dom。 <
Thumbnail
此筆記僅以個人理解方式記錄 環境準備 我們這邊以 Bootstrap 5 的卡片元件來展示,要準備的有: Bootstrap 5 CDN Card(卡片) template React CDN React React 起手式,引用 CDN、綁定 root、指定渲染 dom。 <
Thumbnail
React Props - React 白話文運動。這一篇則會針對 React 語法進一步做講解, 前幾篇也學會了如何建立一個 React 元件,並且學會了元件之間有父子元件的關係。這篇會介紹 React Props 的概念,包含了:React 元件宣告、React Props。
Thumbnail
React Props - React 白話文運動。這一篇則會針對 React 語法進一步做講解, 前幾篇也學會了如何建立一個 React 元件,並且學會了元件之間有父子元件的關係。這篇會介紹 React Props 的概念,包含了:React 元件宣告、React Props。
Thumbnail
建立React專案-React白話文運動:前一篇文章介紹了三個名詞,分別是:Babel 是什麼?Webpack 是什麼?Npm 是什麼?這一篇則是會手把手建立 React 專案,包含:建置環境、建立 React 專案、啟動專案、如何使用 React 擴充套件。這邊也包含:官方 CRA 建置環境以及自
Thumbnail
建立React專案-React白話文運動:前一篇文章介紹了三個名詞,分別是:Babel 是什麼?Webpack 是什麼?Npm 是什麼?這一篇則是會手把手建立 React 專案,包含:建置環境、建立 React 專案、啟動專案、如何使用 React 擴充套件。這邊也包含:官方 CRA 建置環境以及自
Thumbnail
React 是開發網頁、手機前端最流行的 JavaScript 套件之一。React 由 Meta 開發,使開發人員能夠創建可重覆使用的元件來完成前端頁面。JSX 也是目前我們比較常看到的 React 寫法 ,因此接下來會介紹,JSX 是什麼?JSX 語法以及使用 JSX 建構 React 元件。
Thumbnail
React 是開發網頁、手機前端最流行的 JavaScript 套件之一。React 由 Meta 開發,使開發人員能夠創建可重覆使用的元件來完成前端頁面。JSX 也是目前我們比較常看到的 React 寫法 ,因此接下來會介紹,JSX 是什麼?JSX 語法以及使用 JSX 建構 React 元件。
Thumbnail
React 是開發網頁、手機前端最流行的 JavaScript 套件之一。React 由 Meta 開發。React 並不是一個框架。這是因為它只負責呈現 UI 的元件。不過,React 為 Angular 和 Vue 等框架提供了另一種解決方式,使我們可以與它一起完成覆雜的前端頁面功能。
Thumbnail
React 是開發網頁、手機前端最流行的 JavaScript 套件之一。React 由 Meta 開發。React 並不是一個框架。這是因為它只負責呈現 UI 的元件。不過,React 為 Angular 和 Vue 等框架提供了另一種解決方式,使我們可以與它一起完成覆雜的前端頁面功能。
Thumbnail
Create React App 提供了快速建立React App環境的方法: 1. 安裝node.js 2. 建立React project: $ npx create-react-app my-app 3. 啟動app $ cd my-app $ npm start npm start之後即打
Thumbnail
Create React App 提供了快速建立React App環境的方法: 1. 安裝node.js 2. 建立React project: $ npx create-react-app my-app 3. 啟動app $ cd my-app $ npm start npm start之後即打
Thumbnail
本文章目的是希望可以用最簡單的範例,來讓大家了解React到底是什麼東西,有什麼好處,並且套用bootstrap的navbar,加上自己客製的css,來達到component重用的目的! 用React來開發網頁,必須把目標拆解成一個個component,最後組合起來就成為一個網站! 假如我們目標是要
Thumbnail
本文章目的是希望可以用最簡單的範例,來讓大家了解React到底是什麼東西,有什麼好處,並且套用bootstrap的navbar,加上自己客製的css,來達到component重用的目的! 用React來開發網頁,必須把目標拆解成一個個component,最後組合起來就成為一個網站! 假如我們目標是要
Thumbnail
接續上一篇,這邊要來寫一個React hello world app,最後安裝webpack-dev-server來提升開發效率。 使用npm安裝react, react-dom: $ npm install react react-dom --save dependencies下紀錄的是生產環境會
Thumbnail
接續上一篇,這邊要來寫一個React hello world app,最後安裝webpack-dev-server來提升開發效率。 使用npm安裝react, react-dom: $ npm install react react-dom --save dependencies下紀錄的是生產環境會
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News