1:写过哪些vue组件
button 搜索组件(模糊搜索加防抖操作) 图片上传组件 腾讯云上传 弹窗组件 跳转组件。
2:vue组件开发的思想
Vue组件三大要素 一个通用组件,往往不能够完美的适应所有应用场景 所以在封装组件的时候,只需要完成组件 80% 的功能,剩下的 20% 让父组件通过 solt 解决
- props参数(父组件向子组件传值)emit(自组件向父组件分发数据)
- slot定制插槽
- event自定义事件 props跟emit 父子组件传值
3: vue和react的区别
相同点:1,都是用了Virtual DOM。2,都提供了响应式和组件化的视图组件。3,都将注意力集中保持在核心库,而将其他功能如路由和全局状态管理交给相关库。
不同点:1,React中,当某组件的状态发生改变时,它会以该组件为根,重新渲染整个组件子树,而在Vue中,组件的依赖是在渲染的过程中自动追踪的,所以系统能准确知晓哪个组件确实需要被重新渲染。2,Vue的路由库和状态管理库都由官方维护支持且与核心库同步更新,而React选择把这些问题交给社区维护,因此生态更丰富。3,Vue-cli脚手架可进行配置
Vue 很“ 嚣张 ”,它宣称可以更快地计算出Virtual DOM的差异,这是由于它在渲染过程中,由于vue会跟踪每一个组件的依赖收集,通过setter / getter 以及一些函数的劫持,能够精确地知道变化,并在编译过程标记了static静态节点,在接下来新的Virtual DOM 并且和原来旧的 Virtual DOM进行比较时候,跳过static静态节点。所以不需要重新渲染整个组件树。 React默认是通过比较引用的方式进行,当某个组件的状态发生变化时,它会以该组件为根,重新渲染整个组件子树。如果想避免不必要的子组件重新渲染,你需要在所有可能的地方使用PureComponent,或者手动实现shouldComponentUpdate方法。但是Vue中,你可以认定它是默认的优化。