新書推薦:
《
汉末晋初之际政治研究
》
售價:NT$
602.0
《
强者破局:资治通鉴成事之道
》
售價:NT$
367.0
《
鸣沙丛书·鼎革:南北议和与清帝退位
》
售價:NT$
551.0
《
从康德到黑格尔的发展:兼论宗教哲学(英国观念论名著译丛)
》
售價:NT$
275.0
《
突破不可能:用特工思维提升领导力
》
售價:NT$
352.0
《
王阳明大传:知行合一的心学智慧(精装典藏版)
》
售價:NT$
1010.0
《
失衡与重塑——百年变局下的中国与世界经济
》
售價:NT$
602.0
《
不被定义的年龄:积极年龄观让我们更快乐、健康、长寿
》
售價:NT$
352.0
|
內容簡介: |
本书是一本全面、深入介绍Vue.js 3和TypeScript前端开发技术的图书。本书详细介绍了Vue.js 3的新特性与优势,包括模板语法、内置指令、Options API、组件化、过渡动画、Composition API、Vue Router、Vuex 等核心知识点;TypeScript 的基础和进阶知识,包括数据类型、类型别名、联合类型、类型断言、函数类型、类、接口、泛型、类型声明等内容。此外,本书还深入探讨了前端工程化、第三方库的集成与使用、企业级管理后台的实现和自动化部署等内容,以及如何从零开始实现一个Mini-Vue.js 3框架,以便读者深入理解Vue.js 3的核心原理。本书既适合有一定基础的前端开发工程师、Web 开发者阅读,也适合作为初学者学习 Vue.js 3 和TypeScript的入门教材。本书旨在帮助读者全面理解Vue.js 3和TypeScript的使用方法和原理,掌握实用的知识和技能,提高前端开发水平。
|
關於作者: |
王红元(网名coderwhy),担任广州市弘源科教软件有限公司CEO、澳大利亚The WAIN公司CTO,作为腾讯AI高校训练营的特聘讲师,曾为多所双一流高校授课。在国内外大型项目和软件系统中,负责架构设计和研发工作,曾兼任多家公司的技术顾问,协助解决开发过程中的关键问题。精通多种编程语言,包括C/C++、Python、Java、Objective-C、Swift、JavaScript和TypeScript等,对即时聊天和流媒体技术有深入研究。目前致力于不断提高自身技能,为企业、开源社区及学员做出更多贡献。刘军,曾在深圳市华云中盛科技股份有限公司担任前端负责人,广州市弘源科教软件有限公司联合创始人之一,拥有8年前端开发经验。精通Vue.js、React、TypeScript、webpack、Vite、Node、Docker、CI/CD,以及Java、Android等技术栈,擅长微前端、中后台、组件库、脚手架、公众号、小程序、大屏可视化等领域的工作。
|
目錄:
|
1 邂逅和初体验Vue.js11.1 认识Vue.js11.2 Vue.js与其他框架的对比21.2.1 Vue.js、React和Angular三大框架对比21.2.2 三大框架使用数据对比21.3 Vue.js 2的缺点41.4 Vue.js 3带来的新变化41.5 搭建开发环境61.5.1 VS Code的下载和安装71.5.2 VS Code的基本配置71.5.3 VS Code安装插件91.6 Vue.js 3的安装和使用101.6.1 使用CDN引入Vue.js 3111.6.2 下载Vue.js 3源码并在本地引入141.7 计数器案例161.7.1 原生JavaScript实现计数器161.7.2 用Vue.js 3实现计数器171.7.3 MVVM架构模式191.8 createApp的对象参数201.8.1 template属性201.8.2 data属性221.8.3 methods属性221.8.4 其他属性241.9 VS Code生成代码片段241.10 本章小结272 模板语法和内置指令282.1 插值语法282.2 基本指令302.2.1 v-once302.2.2 v-text312.2.3 v-html322.2.4 v-pre322.2.5 v-cloak332.3 v-bind342.3.1 绑定基本属性342.3.2 绑定class属性352.3.3 绑定style属性382.3.4 动态绑定属性402.3.5 绑定一个对象412.4 v-on422.4.1 绑定事件422.4.2 事件对象和传递参数442.4.3 修饰符452.5 条件渲染462.5.1 v-if和v-else462.5.2 v-if和template结合使用482.5.3 v-show492.5.4 v-show和v-if的区别502.6 列表渲染512.6.1 v-for的基本使用512.6.2 v-for支持的类型522.6.3 v-for和template结合使用542.6.4 数组的更新检测552.7 key和diff算法572.7.1 认识VNode和VDOM572.7.2 key的作用和diff算法592.7.3 没有key时的diff算法操作602.7.4 有key时的diff算法操作612.8 本章小结643 Vue.js 3的Options API653.1 计算属性653.1.1 认识计算属性653.1.2 计算属性的基本使用663.1.3 计算属性和methods的区别693.1.4 计算属性的setter和getter713.2 监听器watch733.2.1 watch的基本使用733.2.2 watch配置选项753.2.3 watch字符串、数组和API语法783.2.4 watch深度监听793.3 案例:书籍购物车803.3.1 基本功能介绍803.3.2 搭建基本功能813.3.3 搭建书籍列表833.3.4 搭建“加购物车”功能843.3.5 优化价格和购买数量863.3.6 完整代码展示863.4 本章小结884 v-model和表单输入894.1 v-model的基本使用894.2 v-model的实现原理904.3 v-model绑定其他表单914.4 v-model值的绑定944.5 v-model的修饰符944.5.1 .lazy修饰符944.5.2 .number修饰符944.5.3 .trim修饰符964.6 v-model在组件上的使用964.7 本章小结965 Vue.js 3组件化开发975.1 认识组件化975.2 Vue.js 3的组件化985.3 Vue.js 3注册组件995.3.1 注册全局组件995.3.2 组件的命名规范1025.3.3 注册局部组件1035.4 Vue.js 3开发模式1055.5 Vue.js 3支持SFC1065.6 本章小结1066 前端工程化1076.1 前端快速发展史1076.2 认识webpack1086.3 Vue CLI脚手架1096.3.1 认识Vue CLI1096.3.2 安装Node.js1096.3.3 安装Vue CLI1106.3.4 Vue CLI新建项目1116.3.5 Vue.js 3项目的目录结构1146.3.6 项目的运行和打包1156.3.7 vue.config.js文件解析1176.4 认识Vite1206.5 create-vue 脚手架1216.5.1 认识create-vue1216.5.2 create-vue新建项目1216.5.3 Vue.js 3项目目录结构1226.5.4 项目的运行和打包1236.5.5 vite.config.js文件解析1246.6 webpack和Vite的区别1266.7 本章小结1277 Vue.js 3组件化基础详解1287.1 组件的嵌套1307.1.1 搭建基本页面1307.1.2 组件的拆分和嵌套1317.1.3 组件CSS的作用域1347.1.4 组件之间的通信1357.2 组件样式的特性1357.2.1 Scoped CSS1357.2.2 CSS Modules1387.2.3 在CSS中使用v-bind1397.3 父子组件的相互通信1407.3.1 父组件传递数据给子组件1407.3.2 子组件传递数据给父组件1467.3.3 案例:选项卡TabControl实战1507.4 非父子组件的相互通信1537.4.1 Provide/Inject依赖注入1537.4.2 全局事件总线1597.5 组件中的插槽1627.5.1 认识插槽1627.5.2 插槽的使用1637.6 组件的作用域插槽1697.6.1 认识渲染作用域1697.6.2 作用域插槽1697.6.3 独占默认插槽1717.7 本章小结1728 Vue.js 3组件化进阶详解1738.1 动态组件1738.1.1 v-if指令的实现1748.1.2 动态组件的实现1758.1.3 动态组件的传参1768.1.4 keep-alive的使用1778.2 异步组件1808.2.1 webpack对代码分包1808.2.2 在Vue.js 3中实现异步组件1828.2.3 异步组件和Suspense1858.3 获取元素或组件的实例1878.3.1 $refs1878.3.2 $parent1898.4 组件生命周期函数1908.4.1 认识组件的生命周期1908.4.2 生命周期函数的演练1918.5 在组件中使用v-model指令1938.5.1 v-model的基本使用方法1948.5.2 v-model绑定computed1958.5.3 组件上应用多个v-model1978.5.4 v-model绑定对象类型1988.6 本章小结2009 Vue.js 3实现过渡动画2019.1 基本过渡动画2019.1.1 认识过渡动画2019.1.2 过渡动画特有的类2039.1.3 CSS的Animation动画2049.1.4 Transition组件的常见属性2059.2 第三方库动画库2109.2.1 Animate.css动画库2109.2.2 GSAP动画库2129.3 列表中的过渡动画2169.3.1 TransitionGroup的基本使用2179.3.2 列表元素的过渡动画2199.3.3 案例:列表元素的交替过渡2209.4 本章小结22210 Vue.js 3 Composition API详解22410.1 Options API代码的复用22410.1.1 Mixin混入22410.1.2 extends继承22810.2 认识Composition API22910.3 setup函数的基本使用23010.3.1 setup函数的参数23110.3.2 setup函数的返回值23310.3.3 setup函数的this23410.4 数据响应式API23510.4.1 reactive23510.4.2 ref23610.5 响应式工具reactive23910.5.1 readonly23910.5.2 isProxy24110.5.3 isReactive24110.5.4 isReadonly24110.5.5 toRaw24210.5.6 shallowReactive24210.5.7 shallowReadonly24210.6 响应式工具ref24210.6.1 toRefs24210.6.2 toRef24410.6.3 isRef24510.6.4 unref24510.6.5 customRef24510.6.6 shallowRef24710.6.7 triggerRef24710.7 computed计算属性24710.7.1 computed函数的基本使用24710.7.2 computed函数的get和set方法24810.8 watchEffect监听24910.8.1 watchEffect的基本使用24910.8.2 停止watchEffect监听25110.8.3 watchEffect清除副作用25110.8.4 watchEffect的执行时机25210.9 watch监听25410.9.1 监听单个数据源25410.9.2 监听多个数据源25710.9.3 监听响应式对象25810.10 组件生命周期函数25910.11 Provide/Inject依赖注入26010.11.1 提供数据26110.11.2 注入数据26210.11.3 提供和注入响应式数据26310.12 案例:Composition API的实战26410.12.1 计数器的两种实现方式26410.12.2 代码逻辑的封装和复用26610.12.3 修改网页的标题26710.12.4 监听页面滚动位置26810.13 <script setup>语法27010.13.1 <script setup>的基本使用27010.13.2 defineProps和defineEmits27210.13.3 defineExpose27310.13.4 useSlots和useAttrs27410.14 本章小结27511 Vue.js 3组件化高级详解27611.1 render函数27611.1.1 认识h函数27611.1.2 h函数的基本使用27711.1.3 render函数实现计数器27811.1.4 setup函数实现计数器27911.1.5 在render函数中实现插槽27911.1.6 组件的JSX语法28111.2 自定义指令28311.2.1 自定义指令的基本使用28311.2.2 自定义指令的生命周期函数28511.2.3 自定义指令的参数和修饰符28711.2.4 案例:自定义时间格式化指令28811.3 teleport内置组件29011.3.1 认识teleport组件29011.3.2 teleport的基本使用29011.3.3 teleport中嵌套组件29111.3.4 多个teleport组件的使用29111.4 Vue.js 3的插件开发29211.4.1 认识Vue.js 3插件29211.4.2 对象类型的插件29211.4.3 函数类型的插件29311.5 nextTick函数的原理29411.6 本章小结29712 Vue Router路由29912.1 认识Vue Router29912.1.1 什么是前端路由29912.1.2 前端路由的原理30012.1.3 认识Vue Router3
|
|