
0人評分過此書
重新認識Vue.js:008天絕對看不完的Vue.js 3指南
從零開始!快速上手!網羅完整Vue.js功能的實戰指南
Vue.js不斷地成長,從早期只被定位在JavaScript的UI工具庫,到如今已經是個成熟且功能強大的漸進式框架。Vue.js 3底層核心由TypeScript所改寫,不僅效能更快、檔案更小,更重要的是仍然可以使用我們所熟悉的JavaScript來進行開發。它的特性是短時間內可以快速上手,並且擁有豐富的開發生態環境系統以及蓬勃發展的社群。
作者將多年來在Vue.js的開發與教學心得記錄下來,除了比較Vue.js 2與新推出Vue.js 3版本的差異之外,也希望有助於讀者在學習、體驗Vue.js這套前端框架的時候,能夠少走許多岔路,領略現代前端開發的世界。
【本書精彩內容】
◎從零開始介紹Vue.js的起源、基礎知識、指令、事件與生命週期等核心內容,帶領讀者快速入門。
◎元件系統是Vue.js的另一個核心特性,說明為什麼要使用元件、有什麼好處,以及說明元件系統開發時會遇到的問題。
◎介紹Vue的開發生態圈,並結合CLI/Webpack等相關工具,來為Vue.js從無到有進行專案建置、最佳化、打包部署等功能。
◎作為Vue.js開發生態圈的一環,Vue Router提供開發者透過前端路由來建立單頁式應用程式(SPA)的可能性。
◎Vue.js元件的狀態各自為政,當專案規模日漸擴大的時候,共用狀態與資料管理就顯得十分重要。
◎Composition API是Vue.js 3起新增的重要特性之一,說明最新的Composition API是什麼、如何使用、它解決了什麼問題?為什麼要使用它?以及在實際開發時,使用Composition API需要注意的各種細節。
Vue.js不斷地成長,從早期只被定位在JavaScript的UI工具庫,到如今已經是個成熟且功能強大的漸進式框架。Vue.js 3底層核心由TypeScript所改寫,不僅效能更快、檔案更小,更重要的是仍然可以使用我們所熟悉的JavaScript來進行開發。它的特性是短時間內可以快速上手,並且擁有豐富的開發生態環境系統以及蓬勃發展的社群。
作者將多年來在Vue.js的開發與教學心得記錄下來,除了比較Vue.js 2與新推出Vue.js 3版本的差異之外,也希望有助於讀者在學習、體驗Vue.js這套前端框架的時候,能夠少走許多岔路,領略現代前端開發的世界。
【本書精彩內容】
◎從零開始介紹Vue.js的起源、基礎知識、指令、事件與生命週期等核心內容,帶領讀者快速入門。
◎元件系統是Vue.js的另一個核心特性,說明為什麼要使用元件、有什麼好處,以及說明元件系統開發時會遇到的問題。
◎介紹Vue的開發生態圈,並結合CLI/Webpack等相關工具,來為Vue.js從無到有進行專案建置、最佳化、打包部署等功能。
◎作為Vue.js開發生態圈的一環,Vue Router提供開發者透過前端路由來建立單頁式應用程式(SPA)的可能性。
◎Vue.js元件的狀態各自為政,當專案規模日漸擴大的時候,共用狀態與資料管理就顯得十分重要。
◎Composition API是Vue.js 3起新增的重要特性之一,說明最新的Composition API是什麼、如何使用、它解決了什麼問題?為什麼要使用它?以及在實際開發時,使用Composition API需要注意的各種細節。
-
CHAPTER 1 Vue.js 基礎入門
-
1.1 Vue.js 簡介
-
1.1.1 Vue.js 的發展簡史
-
1.1.2 Vue.js:漸進式框架
-
1.1.3 指令式渲染vs. 宣告式渲染
-
1.1.4 Vue.js 與MVVM 模式
-
1.1.5 Vue.js 與元件系統
-
1.1.6 Vue.js 與前端生態圈
-
1.1.7 Vue.js 3.0 新增的特性
-
1.1.8 Vue.js 安裝與起步
-
1.1.9 Hello Vue!
-
-
1.2 Vue.js 的核心:實體
-
1.2.1 Vue.js 的實體物件
-
1.2.2 將實體物件掛載至DOM
-
1.2.3 定義狀態與網頁模板的映射關係
-
1.2.4 小心data 共用帶來的污染
-
1.2.5 template 模板屬性
-
-
1.3 資料加工與邏輯整合
-
1.3.1 methods 方法
-
1.3.2 computed 計算屬性
-
1.3.3 computed/methods 的使用時機比較
-
1.3.4 Vue Filters(Vue 2.x )
-
-
1.4 Vue.js 的黑魔法:指令
-
1.4.1 屬性綁定:v-bind
-
1.4.2 表單綁定:v-model
-
1.4.3 v-model 與修飾子
-
1.4.4 模板綁定
-
1.4.5 樣式綁定
-
-
1.5 事件處理
-
1.5.1 事件綁定:v-on
-
1.5.2 v-on 與event 物件
-
1.5.3 v-on 與修飾子
-
1.5.4 鍵盤修飾子
-
1.5.5 滑鼠修飾子
-
1.5.6 拆解v-model 的黑魔法
-
-
1.6 條件判斷與列表渲染
-
1.6.1 條件判斷v-if/v-show
-
1.6.2 v-for 列表渲染
-
1.6.3 v-for 與<template>
-
1.6.4 v-for 列表的排序與過濾
-
1.6.5 v-for 可以使用index 當作key 嗎?
-
1.6.6 當陣列的內容變動,畫面為何沒更新?(For Vue 2.x)
-
-
1.7 元件的生命週期與更新機制
-
1.7.1 生命週期與鉤子函式
-
1.7.2 Vue 實體物件的建立
-
1.7.3 狀態的更新與畫面的同步
-
1.7.4 Vue 實體的銷毀
-
-
-
CHAPTER 2 Vue.js 元件系統
-
2.1 元件系統的特性
-
2.1.1 什麼是元件
-
2.1.2 元件的分類與切分
-
2.1.3 元件的宣告與註冊
-
2.1.4 將網頁片段封裝為元件模板
-
2.1.5 子元件的data 必須是函式
-
-
2.2 元件之間的溝通傳遞
-
2.2.1 Props
-
2.2.2 Props 資料類型的驗證
-
2.2.3 非prop 的屬性傳遞
-
2.2.4 雙向綁定?單向資料流?
-
2.2.5 Props 與遞迴元件
-
2.2.6 元件與自訂事件
-
2.2.7 v-model 與元件的雙向綁定(Vue 3.x 新增)
-
2.2.8 跨越層級的傳遞方式
-
-
2.3 動態元件管理
-
2.3.1 v-bind:is 與動態元件
-
2.3.2 <keep-alive> 保留元件狀態
-
2.3.3 特殊的生命週期Hooks:activated 與deactivated
-
2.3.4 非同步元件Async Component(Vue 3.x 新增)
-
-
2.4 編譯作用域與插槽
-
2.4.1 元件的編譯作用域
-
2.4.2 插槽(Slots )
-
2.4.3 具名插槽(Named Slots )
-
2.4.4 teleport(Vue 3.0 新增)
-
-
2.5 <transition> 漸變與動畫
-
2.5.1 <transition> 漸變
-
2.5.2 條件與動態切換
-
2.5.3 複數元素/元件的漸變渲染<transition-group>
-
2.5.5 結合漸變動畫的Hooks 函式處理事件
-
2.5.6 Vue.js 與CSS keyframes 影格動畫
-
-
-
CHAPTER 3 Vue 單一元件檔與Vue CLI
-
3.1 Vue CLI 介紹
-
3.1.1 Vue CLI 是什麼
-
3.1.2 Vue CLI 的安裝
-
3.1.3 透過Vue CLI 建立專案
-
3.1.4 Vue CLI 建立的專案結構
-
-
3.2 Vue SFC 單一元件檔
-
3.2.1 SFC 單一元件檔是什麼
-
3.2.2 將外部檔案作為來源引入
-
3.2.3 lang 使用其他語言開發
-
-
3.3 Vue CLI 環境設定與打包部署
-
3.3.1 package.json 專案與套件相依設定檔
-
3.3.2 vue.cong.js 設定檔
-
3.3.3 開發時的跨網域存取:proxy-devServer
-
3.3.4 多頁式應用程式(MPA)入口設定
-
3.3.5 vue.cong.js 與webpack
-
3.3.6 Vue CLI 整合第三方函式庫
-
-
-
CHAPTER 4 Vue Router 與前端路由管理
-
4.1 Vue Router 與前後端路由
-
4.1.1 多頁式應用程式(MPA)與單頁式應用程式(SPA)
-
4.1.2 Vue Router 介紹
-
4.1.3 Vue Router 的第一步
-
-
4.2 Vue Router 路由設定
-
4.2.1 history 路由模式
-
4.2.2 routes 路由比對
-
4.2.3 巢狀路由
-
4.2.4 具名路由
-
4.2.5 具名視圖
-
4.2.6 路由轉址
-
4.2.7 路由別名
-
4.2.8 路由與Props
-
4.2.9 非同步載入元件
-
-
4.3 <router-link> 建立路由連結
-
4.3.1 to 屬性
-
4.3.2 replace 屬性
-
4.3.3 active-class 與目前路由配對的樣式
-
4.3.4 <router-link> 與v-slot
-
4.3.5 透過router.push()/router.replace() 操作路由
-
-
4.4 路由守衛(Navigation Guards)
-
4.4.1 beforeEach(全域)
-
4.4.2 beforeResolve(全域)
-
4.4.3 afterEach(全域)
-
4.4.4 beforeEnter(路由)
-
4.4.5 元件內的Navigation Guards Hooks
-
4.4.6 Navigation Guards 執行的順序
-
-
-
CHAPTER 5 Vuex 與狀態管理
-
5.1 Vuex 簡介
-
5.1.1 為什麼需要Vuex
-
5.1.2 Vuex 的特性
-
5.1.3 Vuex 導入與安裝
-
-
5.2 Vuex 核心概念與結構
-
5.2.1 Vuex 的結構
-
5.2.2 State
-
5.2.3 getters
-
5.2.4 mutations
-
5.2.5 actions
-
5.2.6 modules
-
-
5.3 Vuex 整合實戰:以口罩地圖為例
-
5.3.1 口罩地圖緣起
-
5.3.2 環境設定
-
5.3.3 專案結構
-
5.3.4 網頁元件結構
-
5.3.5 建立基礎介面
-
5.3.6 拆分元件:asideMenu.vue
-
5.3.7 取得縣市及行政區資料
-
5.3.8 將行政區套用至左側選單
-
5.3.9 將藥局資料套用至左側列表
-
5.3.10 藥局列表與關鍵字搜尋連動
-
5.3.11 「看詳細資訊」對話框:lightbox.vue
-
5.3.12 藥局地圖:maskMap.vue
-
-
-
CHAPTER 6 Code Reuse 與Vue Composition API
-
6.1 Composition API 簡介
-
6.1.1 Composition API 是什麼
-
6.1.2 Vue 2.x 的Options API 出了什麼問題
-
6.1.3 功能與邏輯的重複使用
-
-
6.2 Composition API 的核心
-
6.2.1 setup:啟動元件的位置
-
6.2.2 props 與context
-
6.2.3 ref 與reactive
-
6.2.4 computed
-
6.2.5 readonly
-
6.2.6 methods
-
6.2.7 watch 與watchEect
-
6.2.8 相依性注入(Dependency Injection )
-
6.2.9 Composition API 的生命週期鉤子
-
6.2.10 setup 與ref 語法糖(實驗階段)
-
-
6.3 從Options API 到Composition API
-
6.3.1 實戰:用Composition API 改寫口罩地圖
-
6.3.2 Composition API 是否可以取代Vuex?
-
-
-
APPENDIX A 附錄
-
A.1 進入Vue.js 前的ES6 必備知識
-
A.1.1 var、let 與const
-
A.1.2 ES Module 與import、export
-
A.1.3 箭頭函式與this
-
A.1.4 字串模板(Template literals )
-
A.1.5 解構賦值(Destructuring assignment)
-
A.1.6 ...展開運算子(Spread Operator)/其餘運算子(Rest Operator)
-
A.1.7 Promise 物件:async 與await
-
-
A.2 Vue 2.x 至3.0 快速升級指南
-
A.2.1 透過Vue CLI 快速升級
-
A.2.2 需自行修正的常見部分
-
-
- 出版地 : 臺灣
- 語言 : 繁體中文
評分與評論
請登入後再留言與評分