全部商品分类

【正版】深入浅出Vue.js 前端框架入门到实战教程书籍 web前端开发书籍 了解Vue.js源码 程序设计 360奇舞团团长月影作序推荐

售价 降价通知
市场价 ¥79.00
会员等级价格
  • 可使积分
    0 积分
  • 累积评价12人评价

  • 累计销量38

  • 赠送积分48

  • 数量
    减少数量 增加数量 (库存986
平台自营
商家名称:
新华尚物 国际订购在线 能工巧匠都在这
客服邮件:
admin@xrsdwk.com
客服电话:
400-003-1812
所在地区:
深圳福田区梅林下梅林裕田花园609

扫一扫,手机访问微商城

推荐精品

同类品牌

最近上新

  • 商品名称:【正版】深入浅出Vue.js 前端框架入门到实战教程书籍 web前端开发书籍 了解Vue.js源码 程序设计 360奇舞团团长月影作序推荐
  • 商品编号:CLG001334
  • 品牌:
  • 上架时间:2019-11-06
  • 库存: 986

内容介绍

本书从源码层面分析了Vue.js。首先,简要介绍了Vue.js;然后详细讲解了其内部核心技术“变化侦测”,这里带领大家从0到1实现一个简单的“变化侦测”系统;接着详细介绍了虚拟DOM技术,

其中包括虚拟DOM的原理及其patching算法;紧接着详细讨论了模板编译技术,其中包括模板解析器的实现原理、优化器的原理以及代码生成器的原理;zui后详细介绍了其整体架构以及提供给我

们使用的各种API的内部原理,同时还介绍了生命周期、错误处理、指令系统与模板过滤器等功能的原理。

本书适合前端开发人员阅读。



目录


第 1章 Vue.js简介 1

1.1 什么是Vue.js 1

1.2 Vue.js简史 2

第 一篇 变化侦测

第 2章 Object的变化侦测 6

2.1 什么是变化侦测 6

2.2 如何追踪变化 7

2.3 如何收集依赖 7

2.4 依赖收集在哪里 8

2.5 依赖是谁 10

2.6 什么是Watcher 10

2.7 递归侦测所有key 12

2.8 关于Object的问题 13

2.9 总结 14

第3章 Array的变化侦测 16

3.1 如何追踪变化 16

3.2 拦截器 17

3.3 使用拦截器覆盖Array原型 18

3.4 将拦截器方法挂载到数组的属性上 19

3.5 如何收集依赖 21

3.6 依赖列表存在哪儿 22

3.7 收集依赖 23

3.8 在拦截器中获取Observer实例 24

3.9 向数组的依赖发送通知 25

3.10 侦测数组中元素的变化 26

3.11 侦测新增元素的变化 27

3.11.1 获取新增元素 27

3.11.2 使用Observer侦测新增元素 28

3.12 关于Array的问题 29

3.13 总结 29

第4章 变化侦测相关的API实现原理 31

4.1 vm.$watch 31

4.1.1 用法 31

4.1.2 watch的内部原理 32

4.1.3 deep参数的实现原理 36

4.2 vm.$set 38

4.2.1 用法 38

4.2.2 Array的处理 39

4.2.3 key已经存在于target中 40

4.2.4 处理新增的属性 40

4.3 vm.$delete 41

4.3.1 用法 42

4.3.2 实现原理 42

4.4 总结 45

第二篇 虚拟DOM

第5章 虚拟DOM简介 48

5.1 什么是虚拟DOM 48

5.2 为什么要引入虚拟DOM 51

5.3 Vue.js中的虚拟DOM 51

5.4 总结 53

第6章 VNode 54

6.1 什么是VNode 54

6.2 VNode的作用 55

6.3 VNode的类型 56

6.3.1 注释节点 57

6.3.2 文本节点 57

6.3.3 克隆节点 57

6.3.4 元素节点 58

6.3.5 组件节点 59

6.3.6 函数式组件 59

6.4 总结 59

第7章 patch 60

7.1 patch介绍 60

7.1.1 新增节点 61

7.1.2 删除节点 62

7.1.3 更新节点 63

7.1.4 小结 63

7.2 创建节点 64

7.3 删除节点 67

7.4 更新节点 68

7.4.1 静态节点 68

7.4.2 新虚拟节点有文本属性 69

7.4.3 新虚拟节点无文本属性 69

7.4.4 小结 70

7.5 更新子节点 72

7.5.1 更新策略 72

7.5.2 优化策略 77

7.5.3 哪些节点是未处理过的 82

7.5.4 小结 83

7.6 总结 86

第三篇 模板编译原理

第8章 模板编译 88

8.1 概念 88

8.2 将模板编译成渲染函数 89

8.2.1 解析器 90

8.2.2 优化器 91

8.2.3 代码生成器 91

8.3 总结 92

第9章 解析器 93

9.1 解析器的作用 93

9.2 解析器内部运行原理 94

9.3 HTML解析器 99

9.3.1 运行原理 100

9.3.2 截取开始标签 101

9.3.3 截取结束标签 107

9.3.4 截取注释 108

9.3.5 截取条件注释 108

9.3.6 截取DOCTYPE 109

9.3.7 截取文本 109

9.3.8 纯文本内容元素的处理 112

9.3.9 使用栈维护DOM层级 114

9.3.10 整体逻辑 114

9.4 文本解析器 117

9.5 总结 121

第 10章 优化器 122

10.1 找出所有静态节点并标记 125

10.2 找出所有静态根节点并标记 127

10.3 总结 129

第 11章 代码生成器 130

11.1 通过AST生成代码字符串 131

11.2 代码生成器的原理 134

11.2.1 元素节点 134

11.2.2 文本节点 136

11.2.3 注释节点 137

11.3 总结 137

第四篇 整体流程

第 12章 架构设计与项目结构 140

12.1 目录结构 140

12.2 架构设计 143

12.3 总结 145

第 13章 实例方法与全局API的

实现原理 146

13.1 数据相关的实例方法 147

13.2 事件相关的实例方法 147

13.2.1 vm.$on 148

13.2.2 vm.$off 149

13.2.3 vm.$once 152

13.2.4 vm.$emit 153

13.3 生命周期相关的实例方法 154

13.3.1 vm.$forceUpdate 154

13.3.2 vm.$destroy 155

13.3.3 vm.$nextTick 159

13.3.4 vm.$mount 169

13.4 全局API的实现原理 178

13.4.1 Vue.extend 178

13.4.2 Vue.nextTick 182

13.4.3 Vue.set 183

13.4.4 Vue.delete 183

13.4.5 Vue.directive 184

13.4.6 Vue.filter 185

13.4.7 Vue.component 186

13.4.8 Vue.use 188

13.4.9 Vue.mixin 189

13.4.10 Vue.compile 190

13.4.11 Vue.version 190

13.5 总结 191

第 14章 生命周期 192

14.1 生命周期图示 192

14.1.1 初始化阶段 193

14.1.2 模板编译阶段 194

14.1.3 挂载阶段 194

14.1.4 卸载阶段 194

14.1.5 小结 194

14.2 从源码角度了解生命周期 195

14.3 errorCaptured与错误处理 199

14.4 初始化实例属性 203

14.5 初始化事件 204

14.6 初始化inject 208

14.6.1 provide/inject的使用方式 208

14.6.2 inject的内部原理 210

14.7 初始化状态 215

14.7.1 初始化props 216

14.7.2 初始化methods 224

14.7.3 初始化data 225

14.7.4 初始化computed 228

14.7.5 初始化watch 238

14.8 初始化provide 241

14.9 总结 241

第 15章 指令的奥秘 242

15.1 指令原理概述 242

15.1.1 v-if指令的原理概述 243

15.1.2 v-for指令的原理概述 243

15.1.3 v-on指令 244

15.2 自定义指令的内部原理 246

15.3 虚拟DOM钩子函数 250

15.4 总结 251

第 16章 过滤器的奥秘 252

16.1 过滤器原理概述 253

16.1.1 串联过滤器 254

16.1.2 滤器接收参数 254

16.1.3 resolveFilter的内部原理 255

16.2 解析过滤器 256

16.3 总结 258

第 17章 *佳实践 259

17.1 为列表渲染设置属性key 259

17.2 在v-if/v-if-else/v-else中使用key 259

17.3 路由切换组件不变 260

17.3.1 路由导航守卫beforeRouteUpdate 261

17.3.2 观察 $route对象的变化 261

17.3.3 为router-view组件添加属性key 262

17.4 为所有路由统一添加query 262

17.4.1 使用全局守卫beforeEach 263

17.4.2 使用函数劫持 263

17.5 区分Vuex与props的使用边界 264

17.6 避免v-if和v-for一起使用 264

17.7 为组件样式设置作用域 266

17.8 避免在scoped中使用元素选择器 267

17.9 避免隐性的父子组件通信 268

17.10 单文件组件如何命名 268

17.10.1 单文件组件的文件名的大小写 268

17.10.2 基础组件名 269

17.10.3 单例组件名 270

17.10.4 紧密耦合的组件名 270

17.10.5 组件名中的单词顺序 271

17.10.6 完整单词的组件名 272

17.10.7 组件名为多个单词 273

17.10.8 模板中的组件名大小写 273

17.10.9 JS/JSX中的组件名大小写 274

17.11 自闭合组件 275

17.12 prop名的大小写 276

17.13 多个特性的元素 276

17.14 模板中简单的表达式 276

17.15 简单的计算属性 277

17.16 指令缩写 278

17.17 良好的代码顺序 278

17.17.1 组件/实例的选项的顺序 278

17.17.2 元素特性的顺序 280

17.17.3 单文件组件顶*元素的顺序 281

17.18 总结 282


关联模板【结束】节点,请勿手动操作节点内的内容!!!

商品评价
  • 100%

    好评度

  • 好评(100%)
    中评(100%)
    差评(100%)
  • 全部评价(12)
  • 好评(12)
  • 中评(0)
  • 差评(0)
  • 用户晒单(0)
售后保障
售前服务电话:联系我们的跟单员
售后服务电话:028-61283330
官方网站:http://gw.xrsdwk.com
本商城向您保证所售商品均为正品行货,与您亲临商场选购的商品享受相同的质量保证。本商城还为您提供具有竞争力的商品价格和运费政策,请您放心购买!

这个地方大家要修改请到themes/pc_paleng_moban/library/baozhang.lbi里面修改
权利声明:
本商城上的所有商品信息、客户评价、商品咨询、网友讨论等内容,是卡卡易购商城重要的经营资源,未经许可,禁止非法转载使用。

注:本站商品信息均来自于厂商,其真实性、准确性和合法性由信息拥有者(厂商)负责。本站不提供任何保证,并不承担任何法律责任。

常见问题
下单后可以修改订单吗?

由本网站发货的订单,在订单打印之前可以修改,打开“订单详情”页面,点击右上角的“修改订单”即可,若没有修改订单按钮,则表示订单无法修改。

无货商品几天可以到货?

您可以通过以下方法获取商品的到货时间:若商品页面中,显示“无货”时:商品具体的到货时间是无法确定的,您可以通过商品页面的“到货通知”功能获得商品到货提醒。

订单如何取消?

如订单处于暂停状态,进入“我的订单"页面,找到要取消的订单,点击“取消订单”按钮。

如何联系商家?

在商品页面右则,您可以看到茶立购的联系信息,点击“联系客服”按钮,咨询茶立购的在线客服人员,或至电15077171666。

收到的商品少了/发错了怎么办?

同个订单购买多个商品可能会分为一个以上包裹发出,可能不会同时送达,建议您耐心等待1-2天,如未收到,本网站自营商品可直接联系茶立购客服。

如何申请退货/换货?

登陆网站,进入“我的订单”,点击客户服务下的返修/退换货或商品右则的申请返修/退换货,出现返修及退换货首页,点击“申请”即可操作退换货及返修,提交成功后请耐心等待,由专业的售后工作人员受理您的申请。

退换货/维修需要多长时间?

一般情况下,退货处理周期(不包含检测时间):自接收到问题商品之日起 7 日之内为您处理完成,各支付方式退款时间请点击查阅退款多久可以到账;
换货处理周期:自接收到问题商品之日起 15 日之内为您处理完成;
正常维修处理周期:自接收到问题商品之日起 30 日内为您处理完成。

温馨提示

确定取消
温馨提示

关闭
您尚未登录

用户登陆

立即注册
忘记密码?
消息MySQL Query Error
SQLINSERT INTO `b_kakabn_com`.`ecs_jilu` (user_name, goods_id, user_id, user_ip, visit_time, laiyuan) VALUES ('', '1334', '', '3.135.183.1', '1714303883', 'pc')
错误Duplicate entry '2657421' for key 'PRIMARY'
代码1062