|
( ) | 1.關於 React 的 JSX 語法,下列敘述何者錯誤?
(4) |
|
| (1) | 標籤必須有閉合 (如 <input />) |
|
| (2) | 只能有一個根元素 (Parent Element) |
|
| (3) | 可以直接使用 if-else 語句在 {} 裡面 |
|
| (4) | I don't know |
|
| (5) | class 屬性必須寫成 className |
|
( ) | 2.若出現 "useRoutes() may be used only in the context of a Router component" 錯誤,通常是忘了什麼?
(15) |
|
| (1) | 安裝 react-router-dom |
|
| (2) | 在 main.jsx 用 <BrowserRouter> 包裹 <App /> |
|
| (3) | 在 App.jsx 匯入 Routes |
|
| (4) | 忘記寫 <Route> |
|
| (5) | I don't know |
|
( ) | 3.在 React Router 中,若要建立一個不會造成整頁重新整理的超連結,應使用哪個元件?
(14) |
|
| (1) | <Route path="..."> |
|
| (2) | I don't know |
|
| (3) | <Link to="..."> |
|
| (4) | <a href="..."> |
|
| (5) | <Redirect to="..."> |
|
( ) | 4.關於 Netlify 的 CI/CD 自動部署,下列敘述何者正確?
(19) |
|
| (1) | 只要連結 GitHub,執行 git push 後 Netlify 會自動更新網站 |
|
| (2) | 必須付費才能使用自動更新 |
|
| (3) | 必須自己在終端機輸入 npm run build 才能更新 |
|
| (4) | I don't know |
|
| (5) | 每次都要手動拖拉資料夾上傳 |
|
( ) | 5.將 function add(a, b) { return a + b; } 改寫為箭頭函式簡寫,下列何者正確?
(2) |
|
| (1) | const add = (a, b) => { a + b } |
|
| (2) | const add = (a, b) => return a + b; |
|
| (3) | const add = a, b => a + b; |
|
| (4) | I don't know |
|
| (5) | const add = (a, b) => a + b; |
|
( ) | 6.Git 中,哪一個指令是用來將修改過的檔案加入「暫存區 (Staging Area)」?
(17) |
|
| (1) | git status |
|
| (2) | I don't know |
|
| (3) | git add . |
|
| (4) | git commit |
|
| (5) | git push |
|
( ) | 7.使用 .map() 產生列表時,React 會要求每個 <li> 必須加上什麼屬性?
(8) |
|
| (1) | key |
|
| (2) | I don't know |
|
| (3) | id |
|
| (4) | index |
|
| (5) | name |
|
( ) | 8.若要將本地端的 Git 存檔推送到 GitHub 遠端倉庫,應使用什麼指令?
(18) |
|
| (1) | git fetch |
|
| (2) | git remote |
|
| (3) | git push |
|
| (4) | I don't know |
|
| (5) | git pull |
|
( ) | 9.若希望 useEffect 在變數 count 改變時才執行,依賴陣列應如何設定?
(10) |
|
| (1) | null |
|
| (2) | [count] |
|
| (3) | useEffect 不支援此功能 |
|
| (4) | I don't know |
|
| (5) | [] |
|
( ) | 10.使用 fetch 串接 API 時,通常會搭配哪個 React Hook 來在畫面載入時觸發請求?
(16) |
|
| (1) | I don't know |
|
| (2) | useState |
|
| (3) | useRef |
|
| (4) | useEffect |
|
| (5) | useContext |
|
( ) | 11.在現代 JavaScript 中,哪種宣告方式具有「區塊作用域 (Block Scope)」且宣告後不能重新賦值?
(1) |
|
| (1) | function |
|
| (2) | I don't know |
|
| (3) | var |
|
| (4) | const |
|
| (5) | let |
|
( ) | 12.使用 Tailwind CSS 時,若要設定文字為紅色且字體加粗,應寫在哪個屬性?
(12) |
|
| (1) | class="text-red-500 font-bold" |
|
| (2) | css="text-red-500 font-bold" |
|
| (3) | I don't know |
|
| (4) | style="text-red-500 font-bold" |
|
| (5) | className="text-red-500 font-bold" |
|
( ) | 13.Tailwind CSS 中,p-4 代表什麼意思?
(13) |
|
| (1) | Position 4 |
|
| (2) | Padding 1rem (通常是 16px) |
|
| (3) | Percentage 4% |
|
| (4) | I don't know |
|
| (5) | Font size 4px |
|
( ) | 14.在 React 中,若要修改 state 的數值 (例如 count),必須怎麼做?
(7) |
|
| (1) | 使用 setCount(count + 1) |
|
| (2) | 修改 DOM 元素 document.getElementById |
|
| (3) | I don't know |
|
| (4) | 直接寫 count = count + 1 |
|
| (5) | 直接寫 count++ |
|
( ) | 15.若 const user = { name: 'React' },如何正確使用解構賦值取出 name?
(3) |
|
| (1) | const [name] = user; |
|
| (2) | const { name } = user; |
|
| (3) | const name = user(name); |
|
| (4) | I don't know |
|
| (5) | const name = user; |
|
( ) | 16.在 React 中,父元件傳遞資料給子元件,是透過什麼機制?
(5) |
|
| (1) | API |
|
| (2) | Event |
|
| (3) | I don't know |
|
| (4) | State |
|
| (5) | Props |
|
( ) | 17.在 React 專案中,npm run build 指令的主要用途是什麼?
(20) |
|
| (1) | I don't know |
|
| (2) | 啟動開發伺服器 |
|
| (3) | 安裝所有套件 |
|
| (4) | 打包並壓縮程式碼,產生 dist 資料夾以供正式上線 |
|
| (5) | 刪除專案 |
|
( ) | 18.關於 useEffect(() => { ... }, []),當依賴陣列 (Dependency Array) 為空陣列 [] 時,Effect 何時執行?
(9) |
|
| (1) | 只在元件第一次渲染 (Mount) 後執行一次 |
|
| (2) | 當任何 state 改變時 |
|
| (3) | 永遠不會執行 |
|
| (4) | I don't know |
|
| (5) | 每次畫面更新時 |
|
( ) | 19.下列哪一行程式碼正確建立了 useState?
(6) |
|
| (1) | const count = useState(0); |
|
| (2) | const {count, setCount} = useState(0); |
|
| (3) | const [count, setCount] = useState = 0; |
|
| (4) | I don't know |
|
| (5) | const [count, setCount] = useState(0); |
|
( ) | 20.在 React 中要新增一個項目到陣列 state (如 todos),且不破壞原陣列,應使用什麼語法?
(11) |
|
| (1) | setTodos(todos + newItem) |
|
| (2) | todos.add(newItem) |
|
| (3) | I don't know |
|
| (4) | setTodos([...todos, newItem]) |
|
| (5) | todos.push(newItem) |