随笔分类 -  面试题

摘要:分析 composition API是vue3最重要更新之一; 它具有一系列优点,针对Options APl暴露的一些问题量身打造; 是vue3推荐的写法,掌握它对掌握好Vue3至关重要; 灵感源于react hooks, 又青出于蓝; 体验 options api: <template> 阅读全文
posted @ 2022-11-16 11:07 Mochenghualei 阅读(305) 评论(0) 推荐(0) 编辑
摘要:体验 使用模块:用起来比较繁琐,使用模式也不统一,基本上得不到类型系统的任何支持: const store=createStore({ modules:{ a:moduleA } }) store.state.a //-→要带上moduleA的key,内嵌模块的话会很长,不得不配合mapState使 阅读全文
posted @ 2022-11-14 09:48 Mochenghualei 阅读(546) 评论(0) 推荐(0) 编辑
摘要:分析 这是一道应用题目,很容易想到使用1ocalStorage或数据库存储还原状态;但是如何优雅编写代码还是能体现认知水平; 体验 // 可以从`localStorage`中获取作为状态初始值: state() { return { count: localStorage.getItem("coun 阅读全文
posted @ 2022-11-11 14:52 Mochenghualei 阅读(287) 评论(0) 推荐(0) 编辑
摘要:分析 应用的有些界面是由多层级组件组合而来的,这种情况下,url各部分通常对应某个嵌套的组件,这时就可以通过vue-router的嵌套路由配置来表达这种关系 思路 概念和使用场景; 使用方式; 实现原理; 回答范例 平时开发中,应用的有些界面是由多层级组件组合而来的,这种情况下,url各部分通常对应 阅读全文
posted @ 2022-11-09 10:28 Mochenghualei 阅读(293) 评论(0) 推荐(0) 编辑
摘要:分析 vue-router有3个模式,其中两个更为常用,那便是history和hash;两者差别主要在显示形式和部署上; 体验 vue-router4.x中设置模式的 方式已经改变 const router=createRouter({ history: createWebHashHistory() 阅读全文
posted @ 2022-11-08 10:00 Mochenghualei 阅读(263) 评论(0) 推荐(0) 编辑
摘要:分析 Vue3中最重大的更新之一就是响应式模块reactivity的重写。主要就是用Proxy替换`defineProperty 实现响应式;此变化主要是从性能方面考量; 思路 属性拦截的几种方式; defineProperty的问题; Proxy的优点; 其他考量 回答范例 js中做属性拦截常见的 阅读全文
posted @ 2022-11-07 09:48 Mochenghualei 阅读(276) 评论(0) 推荐(0) 编辑
摘要:分析 vue3在设计时有几个目标:更小、更快、更友好,这些改进多数和性能相关,因此可以围绕介绍; 思路 总述和性能相关的新特性; 逐个说细节; 能说点原理更佳; 回答范例 我会分别从代码、编译和打包三个方面介绍vue3性能方面的提升 代码层面性能优化主要体现在全新的响应式API,基于Proxy的实现 阅读全文
posted @ 2022-11-03 09:54 Mochenghualei 阅读(143) 评论(0) 推荐(0) 编辑
摘要:分析 vue-router中两个重要组件router-link和router-view,是实现SPA的关键; 思路 1.总述两者作用; 2.阐述整体流程; 3.分析两个组件实现方式; 回答范例 vue-router中有两个重要组件router-link和router-view,分别起到路由导航和组件 阅读全文
posted @ 2022-11-02 10:10 Mochenghualei 阅读(169) 评论(0) 推荐(0) 编辑
摘要:vuex数据状态是响应式的,所以状态变视图跟着变,但是有时还是需要知道数据状态变了从而做一些事情,既然状态都是响应式的,那自然可以使用watch,另外vuex也提供了订阅的API:store.subscribe() 思路 总述知道的方法; 分别阐述用法; 选择和场景; 回答范例 我知道几种方法: 可 阅读全文
posted @ 2022-10-27 15:21 Mochenghualei 阅读(1420) 评论(0) 推荐(0) 编辑
摘要:分析 企业级项目中渲染大量数据的情况比较常见,因此这是一道非常好的综合实践题目;既然说思路,就可以分不同情况说说解决方法; 思路 1.描述大数据量带来的问题 2.分不同情况做不同处理 3.总结一下 回答 1.在大型企业级项目中经常需要渲染大量数据,此时很容易出现卡顿的情况。比如大数据的表格、树等; 阅读全文
posted @ 2022-10-26 14:07 Mochenghualei 阅读(427) 评论(0) 推荐(0) 编辑
摘要:体验: 看下面的的例子:"action"类似于"mutation",不同在于: action提交的是mutation,而不具备直接修改状态的能力; action可以包含任意异步操作; import { createStore } from 'vuex' export default createSt 阅读全文
posted @ 2022-10-25 10:16 Mochenghualei 阅读(127) 评论(0) 推荐(0) 编辑
摘要:思路分析 这个题目很有难度,首先思考vuex解决的问题:存储用户全局状态并提供管理状态的API; vuex需求分析; 如何实现这些需求; 回答范例 1.官方说vuex是一个状态管理模式和库,并确保这些状态以可预期的方式变更。可见要实现一个vuex: 要实现一个store存储全局状态 要提供修改状态所 阅读全文
posted @ 2022-10-24 11:14 Mochenghualei 阅读(79) 评论(0) 推荐(0) 编辑
摘要:分析 这是一个综合应用题目,在项目中我们常常需要将App的异常上报,此时错误处理就很重要了;这里要区分错误的类型,进而针对性做收集。然后将收集到的错误信息上报服务器; 思路 1.首先区分错误类型; 2.如何根据错误的不同类型做相应处理; 3.收集的错误如何上报给服务器; 范例 1.应用中的错误类型通 阅读全文
posted @ 2022-10-20 09:45 Mochenghualei 阅读(264) 评论(0) 推荐(0) 编辑
摘要:体验 在大型项目中,我们可能需要拆分应用为更小的块,并仅在需要时再从服务器加载相关组件; import { defineAsyncComponent } from 'vue'; const AsyncComp = defineAsyncComponent(() => { // 加载函数返回Promi 阅读全文
posted @ 2022-10-19 09:42 Mochenghualei 阅读(218) 评论(0) 推荐(0) 编辑
摘要:分析 递归组件我们用的比较少,但是在Tree、Menu这类组件中会被用到; 体验 组件通过组件名称引用它自己,这种情况就是递归组件 <template> <li> <div>{{model.name}}</div> <ul v-show="isOpen" v-if="isFolder"> <!--注 阅读全文
posted @ 2022-10-18 09:52 Mochenghualei 阅读(267) 评论(0) 推荐(0) 编辑
摘要:分析 v-once是Vue中内置指令,很有用的API,在优化方面经常会用到,不过小伙伴们平时可能容易忽略它; 体验 仅渲染元素和组件一次,并且跳过未来更新,直接从缓存中获取保存的状态: <!-- single element --> <span v-once>This will never chan 阅读全文
posted @ 2022-10-17 09:40 Mochenghualei 阅读(480) 评论(0) 推荐(0) 编辑
摘要:分析 API考察,但$attrs和$listeners是比较少用的边界知识,而且vue3有变化,$listeners已经移除,还是有细节可说的; 思路 1.这两个api的作用; 2.使用场景分析; 3.使用方式和细节; 4.vue3变化; 范例 1.我们可能会有一些属性和事件没有在props中定义, 阅读全文
posted @ 2022-10-16 10:19 Mochenghualei 阅读(236) 评论(0) 推荐(0) 编辑
摘要:分析:这是一道API题,我们可能写的自定义指令少,但是我们用的多呀,多举几个例子就行; 使用: // Vue2 directives: { focus: { inserted(el, binding, vnode) { el.focus() } } } // Vue2全局注册 Vue.directi 阅读全文
posted @ 2022-10-14 09:48 Mochenghualei 阅读(271) 评论(0) 推荐(0) 编辑
摘要:思路 vue-loader是什么东西; vue-loader的作用; vue-loader何时生效; vue-loader如何工作; 回答范例 1.vue-loader是用于处理单文件组件(SFC,Single-File Component)的webpack loader; 2.因为有了vue-lo 阅读全文
posted @ 2022-10-13 10:12 Mochenghualei 阅读(165) 评论(0) 推荐(0) 编辑
摘要:我们现在编写的Vue、React和Angular应用大多数情况下都会在一个页面中,点击链接跳转页面通常是内容切换而非页面跳转,由于良好的用户体验逐渐成为主流的开发模式。但同时也会有首屏加载时间长,SEO不友好的问题,因此有了SSR,这也是为什么面试中会问到两者的区别; 思路分析 1.两者概念; 2. 阅读全文
posted @ 2022-10-12 10:11 Mochenghualei 阅读(686) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示