Vue響應式系統的演進:從defineProperty到Proxy
Vue.js 的響應式系統一直是框架的核心。從 Vue 2 到 Vue 3,底層從 Object.defineProperty 切換到 Proxy,不是換個 API 這麼簡單——兩種機制的攔截粒度根本不同,直接決定了哪些操作能被追蹤、哪些不能。 Vue 2:Object.defineProperty 時代實作方式Vue 2 在初始化元件時遞迴遍歷整個物件,對每個屬性呼叫 Object.defineProperty,掛上 getter 和 setter: 1234567891011121314function defineReactive(obj, key, val) { Object.defineProperty(obj, key, { get() { // 收集依賴(目前正在執行的 watcher) dep.depend() return val }, set(newVal) { if (newVal === val) return val = newVal ...
實現左右佈局的多種CSS方法
左側固定寬度、右側自適應,是網頁版型裡最高頻的需求之一。以下整理五種 CSS 做法,左側統一設為 200px,逐一說明寫法與實務取捨。 1. 浮動(Float)方法傳統做法,現在主要用來維護舊專案,但看懂它對理解 CSS 佈局原理有幫助。 12345678910.container { overflow: hidden; /* 清除浮動 */}.left { float: left; width: 200px;}.right { margin-left: 200px; /* 與左側寬度相同 */} 相容性最廣,IE6+ 都能用。缺點是必須清除浮動,父容器用 overflow: hidden 是最省事的方式,但如果內容需要溢出顯示(如下拉選單),就得改用 clearfix。 2. 絕對定位(Absolute Positioning)方法用絕對定位把左側釘死在左上角。 1234567891011.container { position: relative;}.left { pos...
Git基礎使用與實務流程
Git 基礎教學這篇文章帶你了解 Git 的基礎使用,包括版本控制的概念、安裝設定,以及日常會用到的指令。 Git 是什麼?Git 是一個開源的分散式版本控制系統,能有效率地處理大小不一的專案。它的許多概念和設計方式與其他版本控制系統不太一樣,值得花時間理解。 安裝 GitGit 可以在各種作業系統上執行: Windows:從 Git 官方網站 下載安裝檔。 macOS:透過 Homebrew 執行 brew install git。 Linux:用套件管理器安裝,例如 Ubuntu 的 sudo apt-get install git。 安裝過程中,預設選項就夠用了,一路 Next 到底即可。 設定 Git安裝完成後,打開終端機(Terminal 或 Command Prompt),先設定使用者名稱和電子郵件。每次提交都會帶上這些資訊: 12git config --global user.name "你的名字"git config --global user.email "you@example.com" 基本 Git 指令初始化...




