当前播放: 18 | 基础篇习题解答(上)
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
课程目录
第一章:基础篇 (17讲)
01 | 课程介绍
免费
02 | Vue简介
免费
03 | 内容综述
免费
04 | 第一个Vue程序
免费
05 | 组件基础及组件注册
免费
06 | Vue组件的核心概念:事件
免费
07 | Vue组件的核心概:插槽
免费
08 | 理解单文件组件
09 | 双向绑定和单向数据流不冲突
10 | 理解虚拟DOM及key属性的作用
11 | 如何触发组件的更新
12 | 合理应用计算属性和侦听器
13 | 生命周期的应用场景和函数式组件
14 | 指令的本质是什么
15 | 常用高级特性provide/inject
16 | 如何优雅地获取跨层级组件实例(拒绝递归)
17 | template和JSX的对比以及它们的本质
第二章:生态篇 (13讲)
18 | 为什么需要Vuex
19 | 如何在Vue中使用Vuex
20 | Vuex核心概念及底层原理
21 | Vuex最佳实践
22 | Vue Router的使用场景
23 | 选择何种模式的路由及底层原理
24 | Nuxt解决了哪些问题?
25 | Nuxt核心原理是什么?
26 | UI组件库对比:Element UI、Ant Design Vue、iView
27 | 提升开发效率和体验的常用工具:ESLint、Prettier、vue-devtools
28 | 单元测试的重要性及其使用
29 | 生态篇习题解答(上)
30 | 生态篇习题解答(下)
第三章:实战篇 (21讲)
31 | Ant Design Pro介绍
32 | 使用Vue CLI 3快速创建项目
33 | 如何自定义Webpack和Babel配置
34 | 如何设计一个高扩展性的路由
35 | 实现一个可动态改变的页面布局
36 | 如何将菜单和路由结合
37 | 如何使用路由管理用户权限
38 | 更加精细化的权限设计(权限组件、权限指令)
39 | 如何在组件中使用ECharts、Antv等其他第三方库
40 | 如何高效地使用Mock数据进行开发
41 | 如何与服务端进行交互(Axios)
42 | 创建一个普通表单
43 | 初始数据、自动校验、动态赋值
44 | 创建一个分步表单
45 | 自己封装一个支持自动校验的表单项
46 | 如何管理系统中使用的图标
47 | 如何定制主题及动态切换主题
48 | 如何做好国际化
49 | 如何高效地构建打包发布
50 | 如何构建可交互的组件文档
51 | 如何做好组件的单元测试
第四章:福利篇 (2讲)
52 | 如何发布组件到npm
53 | GitHub相关生态应用(持续集成、单测覆盖率、文档发布、issue管理)
18 | 基础篇习题解答(上)

18 | 基础篇习题解答(上)

唐金州
一点资讯前端技术专家,Ant Design Vue 作者
53讲 53课时,约500分钟10738
单独订阅¥129
2人成团¥99
4
登录 后留言

精选留言(13)

  • 君の名は。
    老师,我通过反复测试demo,发现以下几个问题
    第一:
    handleChange(e) {
          this.info.name = e.target.value;
          this.$forceUpdate();
    }
    子组件 Proxy.vue 中 this.info.name = e.target.value 是直接修改了父组件传过来的数据,但是它并没有报错,是因为子组件并没有直接修改 info。没有报错的原因我认为是子组件对父组件穿过来的值是引用类型,引用地址没有变化,其内部无论修改什么都没有影响。我通过将父组件的 info 添加 name 属性并给予值,子组件直接修改,没有报错;通过将父组件传过来的 info 改为 String,子组件直接修改其值,发现vue报错,而得出的结论。
    第二:
    父组件中
    handleProxyChange(val) {
          window.isUpdatingChildComponent = true;
          this.info.name = val;
          this.info = { name: val };
    }
    window.isUpdatingChildComponent = true;这段代码没有任何意义,我将这个方法直接删除,同时放开子组件中created方法的代码,proxy.js不受影响。
    请老师对我以上发现的问题提出建议。

    (以下为一时冲动所想,但觉得应该写出来)
    我通过查看课程安排,发现老师的课程安排较为紧张,从而造成老师的视频讲解中有些部分讲解较思路不是很明确,有些代码一带而过或者根本没有讲解,给没有基础或者基础较弱的同学造成混乱。我由衷的希望老师在录制完一段视频后,自己观看一遍,以便查漏补缺,哪怕有文字说明都好。我知道老师是在百忙之中抽出来的时间录制课程,辛苦老师,但是既然决定录制课程,那么就应该对课程负责,对学生负责,对质量负责,哪怕因为质量造成课程拖延,我相信大家都是可以体谅的,希望老师的课程越来越好。

    作者回复: 感谢建议,后面会进一步优化课程!
    如果你是删除了isupdatingchildcomponent = true 可以刷新下页面重试,应该是有一次提示的,如果你把this.info = {name: val }也删掉,就会每次修改都会提示。这是因为我们把this.info 给重新赋值了,而子组件只在created中对info做了proxy,后来info 直接被改了,所以只会得到一次提示

    2019-03-26
    17
  • young
    老师,终于搞明白了使用index作为key会出现bug的原因了!
    因为当使用splice()方法切掉数组的某个元素时数组的index会被重新索引,造成数组的最后一个index丢失,从而会造成虚拟DOM的最后一个结点(key)丢失,造成无论删除哪个结点都会误删除最后一个结点的bug
    2019-04-21
    11
  • 星灬缘
    老师,那个删除key的 既然是根据下标删除数组的,点解删除传入的却不用下标,传key值是从1开始的,下标却是从0开始的,感觉并不能说明key值不能用index。
    2019-05-23
    7
  • 小仙儿~
    老师讲了半天也只是讲vue怎么不推荐子组件修改父组件传的值,可是没讲为什么子组件不能改啊

    作者回复: 好吧 补充一下: 顶层提供的数据可能会有多个子组件再使用,如果一个子组件直接修改了,其他子组件也会跟着变化。 整个的数据流向就会变得越来越乱。 如果完全遵循单向数据流,当数据有变化需求,都要通过父组件去更改,父组件可以有权限来进一步处理要不要更改。 整个数据的流向就简单直观了。

    2019-03-29
    3
  • 阿耿
    Index例子有问题,删除传了key,循环用了index
    2019-05-31
  • 星灬缘
    O__O "…,没仔细听课,好想删留言 O__O "… 检讨检讨 O__O "…
    2019-05-23
  • hunzi-ssq
    请问老师 这个key我们可不可以就用:key=‘“key”+index’ 来解决呢?

    作者回复: 并不可以 你这样和直接用index是一样的

    2019-04-18
  • young
    老师,习题解答1中我们都要手动写代码对props内部定义的数据进行保护吗?我测试过了,如果props里面定义的数据是基本类型Vue会报错,如果是对象则Vue不会报错我们可以直接修父组件里的数据!!

    作者回复: 不用特别去手动保护,只要注意就好,就算不报错,也不要直接改

    2019-04-15
  • 黑曼巴
    老师我发现我把这句话展开以后 //this.$emit("change", e.target.value); ,并且把created注释的也展开后 还是会报错name不能修改的错误,只会报错一次为什么只会报一次错误 是不是最初始化的isUpdatingChildComponent他还不是true,所以报一次错误

    作者回复: 可以看我回复 “君の名は。” 的留言

    2019-04-03
  • Geek_3adda6
    老师 Vue函数和生命周期钩子里 是通过bind 把this绑定成了vue实例吗 还有就是为什么cli里只有一个vue实例

    作者回复: 是的,methods是使用的bind,生命周期直接使用的apply或call。应该说只有一个“跟”实例

    2019-04-03
  • 小仙儿~
    就直接用传入的值做key的话,如果传入的两个值相同呢?
    2019-03-30
  • 柯恩
    关于在template中使用临时变量的内容在哪个课程里面啊

    作者回复: 函数式组件部分

    2019-03-30
  • 志…
    不能用index作为key那部分还是有点不理解,能不能再详细说一下

    作者回复: 我稍后写篇文章,再详解下吧

    2019-03-30
    1
收起评论
看过的人还看
玩转webpack

程柳锋  腾讯高级工程师,IVWEB团队社区和工程化负责人

84讲 | 5511 人已学习

拼团 ¥79 原价 ¥99
趣谈网络协议

刘超  网易研究院云计算技术部首席架构师

51讲 | 40024 人已学习

拼团 ¥79 原价 ¥99
MySQL实战45讲

林晓斌  网名丁奇,前阿里资深技术专家

48讲 | 44076 人已学习

拼团 ¥79 原价 ¥99
重学前端

程劭非(winter)  前手机淘宝前端负责人

58讲 | 33174 人已学习

¥99