8. 小程序 / 网页前端答辩

本章收录 112 道老师常问问题,高频题靠前。回答时尽量结合自己的项目举例。

1. nextTick 有什么作用?

在 DOM 更新循环结束后执行回调,确保能读到更新后的 DOM。修改响应式数据后立刻操作 DOM 时常用。Vue 更新是异步批量的,所以需要 nextTick。

结合毕设:表单校验失败后滚动到错误项、弹窗打开后自动聚焦输入框。

2. keep-alive 缓存组件注意什么?

keep-alive 缓存组件实例,切换回来不销毁。配合 include/exclude、max;需在激活/失活钩子处理逻辑。列表进详情再返回保持滚动位置时常用。

注意缓存过多占内存;被缓存组件里定时器要在 deactivated 清理。

3. 插槽 slot 和作用域插槽怎么用?

默认插槽、具名插槽把父内容插入子组件;作用域插槽由子组件把数据回传给父来自定义渲染(如表格列定制)。提升组件复用性。

结合毕设封装表格/对话框时如何用插槽扩展操作列。

4. Pinia 或 Vuex 状态管理何时需要?

跨多页面共享的用户信息、权限、购物车等适合全局仓库;仅父子传递不必上状态库。Pinia API 更简洁,Vue3 推荐。

毕设说明:用户信息与 token 是否放 store,刷新后如何持久化。

5. 组合式 API 相比 Options API 优势?

按功能聚合逻辑,便于抽离 hooks/composables;TypeScript 支持更好;相同逻辑可在多组件复用。Options 按 data/methods 拆分,大组件易散乱。

6. ref 和 reactive 区别?

ref 适合基本类型与单一值,取值需 .value;reactive 适合对象,不能整体替换绑定。模板中 ref 自动解包。也可 ref 包对象。

7. 前端 SEO 对管理系统重要吗?

后台管理系统通常不需要 SEO;官网/内容站才需要 SSR/预渲染、语义化标签、sitemap。答辩如实说:本系统面向登录用户,SEO 不是目标。

8. 如何处理大文件上传?

校验类型大小、显示进度、失败重试;更大文件可分片上传+合并。注意超时与 Content-Type。结合毕设:头像/附件上传接口与限制策略。

9. 前端安全还有哪些注意点?

  1. 敏感信息不写死在前端
  2. 依赖漏洞定期升级
  3. 第三方脚本可信
  4. 上传文件类型白名单
  5. 生产环境谨慎开启 sourceMap 外泄源码

10. 什么是骨架屏?有什么好处?

先展示灰色占位布局再替换真实内容,降低白屏感知等待。适合列表、详情首屏。可用组件或静态 HTML 实现。

11. 如何做权限按钮的显示与隐藏?

根据角色/权限码 v-if 控制按钮;更规范可用自定义指令。强调:隐藏不等于安全,接口必须鉴权,否则改请求仍可越权。

12. iframe 使用注意?

可用于嵌入报表或第三方页,但有通信、样式、安全限制;注意 sandbox、postMessage。毕设一般少用,能原生页面就不要 iframe。

13. 如何向老师演示前端核心页面?

准备管理员与普通用户两套账号;按登录→主流程→权限差异→异常提示演示;提前清缓存;录屏备份。讲解时对照代码指出请求与组件位置。

14. 浏览器从输入 URL 到页面展示经历了哪些步骤?

典型链路:DNS 解析 → 建立 TCP(可能含 TLS)→ 发送 HTTP 请求 → 服务器响应 → 浏览器解析 HTML 构建 DOM → 解析 CSS 构建 CSSOM → 合成渲染树 → 布局(Layout)→ 绘制(Paint)→ 合成上屏。JS 可能阻塞解析,可用 defer/async 优化。

结合毕设说明你的页面是 CSR 还是服务端渲染,以及首屏慢时如何排查。

15. 什么是回流和重绘?如何减少?

回流(重排)改变几何信息(宽高、位置)会重新布局;重绘只改外观(颜色、阴影)不必重排。回流成本更高。

  1. 避免频繁改样式,批量修改 class
  2. 读写分离,减少强制同步布局
  3. 动画优先 transform/opacity
  4. 表格、复杂选择器慎用

结合毕设举例:列表渲染、弹窗动画时你做了哪些优化。

16. 什么是事件冒泡和事件捕获?事件委托有什么用?

捕获从外到内,冒泡从内到外;常用冒泡阶段监听。事件委托把监听绑在父元素,利用冒泡处理子元素事件,减少监听器数量、适合动态列表。

毕设中表格行点击、列表删除按钮可用委托实现,注意 stopPropagation 的使用场景。

17. 如何理解 JS 的原型和原型链?

每个对象有隐式原型指向构造函数的 prototype;查找属性时沿原型链向上,直到 Object.prototype 或 null。ES6 class 本质仍是原型语法糖。

答辩时能说清「实例 → 构造函数.prototype → Object.prototype」,并说明你项目里是否用到继承/混入。

18. 闭包是什么?项目中有哪些使用场景?

闭包是函数能够访问并「记住」定义时的外层作用域变量。用途:数据私有、函数柯里化、防抖节流中的计时器状态、模块封装。

注意闭包可能造成内存占用;定时器、事件监听要在销毁时清理。结合毕设举一个防抖搜索或私有计数例子。

19. 同步、异步、微任务、宏任务怎么理解?

同步代码先执行;异步任务进入任务队列。微任务(Promise.then、MutationObserver)在本轮宏任务结束后优先清空;宏任务(setTimeout、I/O、UI)下一轮执行。

答辩可画:执行栈 → 微任务队列 → 宏任务。结合 axios/Promise 说明接口回调为何晚于同步代码。

20. 深拷贝和浅拷贝区别?如何实现深拷贝?

浅拷贝只复制第一层引用;深拷贝递归复制所有层级。常用:structuredClone、lodash.cloneDeep;JSON 序列化有局限(函数、undefined、循环引用)。

改表单草稿、编辑回显时要避免直接改原对象,结合毕设说明你如何拷贝列表项。

21. 什么是同源策略?跨域如何解决?

协议、域名、端口任一不同即跨源,浏览器限制脚本读跨域响应。解决:CORS(后端放行)、开发环境代理、JSONP(仅 GET,过时)、Nginx 同域反代。

毕设前后端分离常用:开发 vite/webpack proxy,生产 Nginx 反代到 API。

22. HTTP 常见状态码你了解哪些?

200 成功;201 创建;204 无内容;301/302 重定向;400 参数错误;401 未认证;403 无权限;404 不存在;500 服务器错误;502/504 网关问题。

前端应根据 401 跳登录、403 提示无权限、5xx 友好报错,不要只 alert 原始信息。

23. GET 和 POST 有什么区别?

语义上 GET 查、POST 提交;GET 参数多在 URL,有长度与缓存特点;POST 主体传参,更适合写操作与敏感数据。REST 中还用 PUT/PATCH/DELETE。

毕设列表查询用 GET,新增修改用 POST/PUT,并说明幂等性差异。

24. Vue2 和 Vue3 有哪些重要区别?

  1. 响应式:Object.defineProperty → Proxy
  2. 组合式 API(setup)更利于逻辑复用
  3. 多根节点、Teleport、Fragments
  4. 性能与 Tree-shaking 更好

若毕设用 Vue3 + 组合式,说明为何不用 Options;若 Vue2 也要说清生命周期差异。

25. Vue 响应式原理简述?

Vue3 用 Proxy 拦截对象读写,依赖收集(track)与触发更新(trigger);模板编译为渲染函数,依赖变更后异步批量更新虚拟 DOM 再打补丁。

答辩不必背源码,能说「数据变 → 依赖通知 → 组件重新渲染」并结合 computed/watch 使用即可。

26. v-if 和 v-show 区别?

v-if 条件为假时不渲染(销毁/创建),切换成本高;v-show 仅切换 CSS display,初始都渲染。频繁切换用 v-show,权限很少进入的用 v-if。

27. Vue 组件通信方式有哪些?

父子:props / emit;跨层:provide/inject;全局:Pinia/Vuex;其他:事件总线(慎用)、路由参数、本地存储。优先明确数据流向。

结合毕设说明列表页与弹窗表单如何传参回传。

28. key 在 v-for 中为什么重要?

key 帮助虚拟 DOM 复用与正确更新节点;用唯一 id,避免用 index(插入删除易错乱)。列表动画、表单状态更依赖正确 key。

29. 什么是虚拟 DOM?有什么优缺点?

用 JS 对象描述真实 DOM,变更时 diff 后批量打补丁,减少直接操作 DOM。优点:可跨平台、批量更新;缺点:有内存与 diff 开销,简单页未必更快。

结合 Vue/React 说明你理解的是「提升可维护与批量更新」而非神话性能。

30. 前端路由 hash 和 history 模式区别?

hash 带 #,兼容好、不需服务端配置;history 用干净路径,需服务器回退到 index.html,否则刷新 404。

毕设部署 Nginx 时要配置 try_files,答辩常问这一点。

31. SPA 单页应用优缺点?

优点:体验流畅、前后端分离、局部更新;缺点:首屏可能较慢、SEO 弱、路由需配置。管理系统毕设很适合 SPA。

可用路由懒加载、骨架屏优化首屏。

32. Axios 拦截器一般做什么?

请求拦截:加 Token、统一 baseURL、打开 loading;响应拦截:统一拆 data、处理 401 跳登录、错误提示、关闭 loading。把横切逻辑集中,业务页更干净。

33. 如何取消重复请求或过期请求?

可用 AbortController、axios CancelToken(旧);同一搜索词只保留最后一次,忽略过期响应,避免先发出的慢请求覆盖新结果。

毕设搜索框防抖 + 忽略过期响应是加分点。

34. 前端表单校验怎么做才规范?

前端做体验校验(必填、格式、长度),后端必须再校验。可用 Element Plus Form rules、Vant Form。提交前校验,失败定位到字段。

强调「前端可绕过,安全靠后端」。

35. 如何防止按钮重复提交?

  1. 点击后禁用按钮直到请求结束
  2. 节流 / loading 锁
  3. 后端幂等 Token 或唯一约束

前后端一起做更稳妥,答辩要提到后端。

36. 前端性能优化手段有哪些?

  1. 减小包体积:懒加载、按需引入、压缩
  2. 缓存:强缓存/协商缓存、CDN
  3. 减少回流、虚拟列表
  4. 图片:WebP、合适尺寸、懒加载
  5. 接口合并与防抖

挑 2~3 条结合毕设真实做过的说,勿堆砌。

37. CSS 盒模型有哪些?box-sizing 作用?

标准盒模型:width 不含 padding/border;IE 怪异盒模型相反。box-sizing:border-box 让宽高包含 padding/border,布局更好算,项目常全局设置。

38. Flex 布局常用属性?

容器:display:flex、justify-content、align-items、flex-direction、flex-wrap;项目:flex、align-self。适合一维排版,管理端后台布局常用。

结合毕设顶栏+侧栏+内容区结构说明。

39. 移动端适配有哪些方案?

rem/vw、灵活 flex、媒体查询;小程序用 rpx。注意 1px 边框、安全区、横竖屏。H5 可用 postcss-px-to-viewport。

40. BFC 是什么?有什么用?

块级格式化上下文,内部布局不受外界浮动影响。触发:overflow:hidden/auto、flex 子项、display:inline-block 等。用途:清浮动、防止 margin 合并。

41. CSS 优先级如何计算?

大致:!important > 内联 > id > class/属性/伪类 > 标签/伪元素;同优先级后来者覆盖。尽量少用 !important,用 BEM 或 scoped 控制范围。

42. 什么是 XSS?前端如何防护?

跨站脚本:恶意脚本注入页面窃取 Cookie 或篡改。防护:输出编码、避免 v-html 不信任内容、CSP、HttpOnly Cookie、富文本消毒。

毕设若渲染用户输入必须提到转义。

43. 小程序和 H5 有什么区别?

小程序有双线程、包体积与域名白名单、专用 API;H5 跑在浏览器,灵活但受微信环境与性能影响。发布审核、登录(code 换 openid)是小程序特有点。

44. 小程序登录流程怎么讲?

wx.login 得 code → 后端换 session/openid → 自建登录态(Token)→ 后续请求带头。用户信息需按最新隐私合规授权。

准备一张时序图,老师很爱问。

45. UniApp 的优缺点?

优点:一套代码多端、生态组件多、毕设出活快;缺点:极端性能与平台差异、部分原生能力要条件编译。说明你为何选它以及用了哪些条件编译。

46. 如何做前端错误监控与排查?

开发:控制台、断点、Vue errorHandler、网络面板看接口。可上报 window.onerror / unhandledrejection。线上看 Nginx/后端日志配合复现。

讲一个真实 bug:从现象 → 定位 → 修复。

47. 前端工程化包括哪些内容?

模块化、构建打包、代码规范(ESLint/Prettier)、Git 分支、环境变量、自动部署、组件库与文档。毕设至少体现:目录规范、环境区分、统一请求封装。

48. 为什么需要环境变量?

区分开发/测试/生产的 API 地址、开关。Vite 用 import.meta.env,注意勿把密钥写进前端。答辩说明 .env.development / .env.production。

49. 组件库为什么按需引入?

全量引入增大首包;按需或自动按需插件只打包用到的组件,加快首屏。Element Plus 可用 unplugin-vue-components。

50. 长列表卡顿如何优化?

分页/触底加载、虚拟列表、减少列内复杂组件、图片懒加载、稳定 key。管理端表格用分页是最常见做法。

51. 前后端联调常见问题有哪些?

  1. 跨域与代理配置
  2. 字段名不一致、时间格式、Long 精度
  3. 鉴权头未带、401 处理
  4. 上传 Content-Type

准备 Postman 与接口文档,体现工程习惯。

52. 如何保证前端代码可维护?

目录分层(api/views/components)、统一请求与错误处理、组件复用、命名清晰、必要注释、去掉死代码。答辩打开项目能快速定位登录与核心业务页。

53. 前端项目如何部署?

npm run build 产出 dist → 上传 Nginx/静态托管 → 配置 try_files 支持 history → API 反代 → 缓存策略。说明你服务器目录与刷新是否 404 的处理。

54. 前端三大核心技术作用?

  1. HTML负责搭建页面结构,搭建文字、按钮、表单等基础布局
  2. CSS负责页面样式美化、布局适配、色彩样式调整
  3. JavaScript负责页面交互、表单校验、接口请求、动态渲染数据,三者配合实现完整前端页面。

55. Vue核心特性与项目应用?

Vue核心:双向数据绑定、虚拟DOM、组件化开发、轻量高效。组件化将页面拆分为头部、侧边栏、表单等复用组件,减少冗余代码;双向绑定实现数据视图同步,无需手动操作DOM,大幅提升开发效率。

56. 前后端完整交互流程?

  1. 前端通过Axios封装请求,携带参数调用后端接口
  2. 后端接收参数、完成参数校验、业务逻辑处理、数据库操作
  3. 后端统一返回JSON格式结果
  4. 前端根据返回结果完成页面渲染、弹窗提示、页面跳转、数据更新。

57. 页面适配、样式错乱解决方案?

  1. 采用弹性布局、flex布局适配多屏幕
  2. 使用rpx、rem自适应单位
  3. 重置默认浏览器样式
  4. 针对不同分辨率做兼容适配,有效解决页面变形、错乱、适配不佳问题。

58. 为什么做小程序/网页而不是 App?

AOP 面向切面:在不改业务代码前提下统一日志、事务、权限等横切逻辑。

  1. 基于 JDK 动态代理或 CGLIB
  2. @Aspect + @Around 记录耗时
  3. 答辩结合项目切面类说明

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

59. 微信小程序双线程模型?

小程序 setData 将逻辑层数据同步到视图层,频繁大数据 setData 性能差。

  1. 只更新变化字段
  2. 合并多次 setData
  3. 答辩说明列表渲染优化

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

60. UniApp 与原生小程序区别?

AOP 面向切面:在不改业务代码前提下统一日志、事务、权限等横切逻辑。

  1. 基于 JDK 动态代理或 CGLIB
  2. @Aspect + @Around 记录耗时
  3. 答辩结合项目切面类说明

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

61. 微信小程序登录授权详细流程?

  1. 用户点击授权登录,小程序调用wx.login获取临时code
  2. 前端将code传给后端
  3. 后端调用微信开放平台接口,解析code获取用户唯一OpenID
  4. 判断用户是否注册,无则自动注册,有则直接登录,返回用户信息与登录状态。

62. 前端技术栈与选型理由?

Vue 渐进式框架:数据驱动、组件化、虚拟 DOM,适合管理系统与小程序(uni-app)。

  1. 双向绑定 v-model
  2. 组件复用与单文件组件
  3. 答辩说明技术栈版本

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

63. 路由与页面如何组织?

权限设计常用 RBAC:用户—角色—权限,菜单与接口双重校验。

  1. 前端隐藏按钮不等于安全,后端必须鉴权
  2. 拦截器/过滤器校验登录态与角色
  3. 答辩演示管理员与普通用户差异

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

64. 如何提升体验?

简要结论:加载态、空态、防重复点击、明确错误提示。

关于「如何提升体验」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

65. 前后端联调注意?

跨域是浏览器同源策略限制不同源 AJAX 请求,需服务端 CORS 或 Nginx 反代。

  1. @CrossOrigin、WebMvcConfigurer、Filter 均可配置
  2. 允许 Origin、Methods、Headers 需最小化
  3. 前后端分离联调时高频考点

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

66. 响应式或适配怎么做?

简要结论:rpx/rem/viewport;管理端可固定宽。

关于「响应式或适配怎么做」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

67. 包体积如何控制?

简要结论:分包、压缩图片、按需加载。

关于「包体积如何控制」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

68. setData 注意?

小程序 setData 将逻辑层数据同步到视图层,频繁大数据 setData 性能差。

  1. 只更新变化字段
  2. 合并多次 setData
  3. 答辩说明列表渲染优化

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

69. 生命周期?

Vue/小程序生命周期钩子控制创建、挂载、更新、销毁阶段逻辑。

  1. onLoad/onShow 拉数据
  2. mounted 发请求
  3. 答辩说明在哪个钩子初始化

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

70. 页面栈限制?

简要结论:注意 navigate 层级。

关于「页面栈限制」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

71. storage 用途?

SpringMVC 参数绑定自动将请求参数封装为方法入参。

  1. 简单类型、POJO 对象按名称或 @RequestParam 绑定
  2. @PathVariable 绑定 REST 路径变量
  3. 答辩强调服务端仍需校验,不能只依赖前端

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

72. 授权隐私?

简要结论:按平台新规。

关于「授权隐私」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

73. 支付流程?

简要结论:统一下单再调起。

关于「支付流程」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

74. 自定义组件?

简要结论:复用。

关于「自定义组件」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

75. 状态管理?

Vue 渐进式框架:数据驱动、组件化、虚拟 DOM,适合管理系统与小程序(uni-app)。

  1. 双向绑定 v-model
  2. 组件复用与单文件组件
  3. 答辩说明技术栈版本

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

76. 列表分页?

分页限制单次查询数据量,常用 PageHelper 或 LIMIT offset,size。

  1. 前端传 pageNum/pageSize,后端封装 PageInfo
  2. 深分页 offset 过大性能差,可延迟关联优化
  3. 答辩演示列表页分页接口与 SQL

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

77. 下拉刷新?

Entity Framework Core 是 .NET ORM,Code First 迁移、LINQ 查询。

  1. DbContext 管理会话
  2. 复杂 SQL 可原生 ADO/Dapper
  3. 答辩展示一个实体映射

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

78. 图片懒加载?

类加载:加载→验证→准备→解析→初始化;双亲委派先让父加载器加载,防核心类被篡改。

  1. 自定义 ClassLoader 了解
  2. Tomcat 可打破委派
  3. 答辩说明 JVM 如何找到类

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

79. 骨架屏?

简要结论:感知性能。

关于「骨架屏」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

80. 表单校验?

简要结论:前端+后端双校验。

关于「表单校验」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

81. 上传到哪?

文件存储可选本地磁盘或 OSS 对象存储,数据库仅存路径/URL。

  1. 本地简单但扩展性差,OSS 适合生产
  2. 访问控制与防盗链
  3. 答辩演示上传后如何访问文件

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

82. 富文本?

简要结论:rich-text 注意消毒。

关于「富文本」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

83. TabBar?

Starter 是 Spring Boot 起步依赖,聚合常用 jar 与自动配置。

  1. 如 spring-boot-starter-web 引入 MVC、Tomcat、Jackson
  2. 约定优于配置,减少 pom 手工维护
  3. 答辩可对照 pom.xml 说明引入了哪些能力

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

84. 云开发?

简要结论:与自建后端差异。

关于「云开发」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

85. 真机调试?

简要结论:与开发者工具差异。

关于「真机调试」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

86. 审核注意?

简要结论:类目与隐私协议。

关于「审核注意」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

87. Vue 生命周期?

Vue 渐进式框架:数据驱动、组件化、虚拟 DOM,适合管理系统与小程序(uni-app)。

  1. 双向绑定 v-model
  2. 组件复用与单文件组件
  3. 答辩说明技术栈版本

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

88. computed/watch?

applicationContext.xml 是 Spring 核心配置文件,声明 Bean、扫描、数据源等。

  1. 与 spring-mvc.xml 分工:根容器 vs Web 容器
  2. Boot 项目多用 JavaConfig + yml 替代 XML
  3. 答辩对比 SSM 手工装配与 Boot 自动配置差异

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

89. 组件通信?

简要结论:props emit 状态库。

关于「组件通信」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

90. 路由懒加载?

类加载:加载→验证→准备→解析→初始化;双亲委派先让父加载器加载,防核心类被篡改。

  1. 自定义 ClassLoader 了解
  2. Tomcat 可打破委派
  3. 答辩说明 JVM 如何找到类

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

91. Axios请求封装的好处?

  1. 统一配置请求前缀、超时时间、请求头
  2. 统一拦截响应结果、处理异常报错
  3. 统一添加loading加载状态,简化代码、统一规范、便于维护。

92. 401 处理?

统一异常处理避免把堆栈直接返回前端,提升体验与安全。

  1. @ControllerAdvice + @ExceptionHandler 捕获业务/系统异常
  2. 封装统一 Result(code/msg/data)
  3. 记录日志便于排错,答辩可展示全局异常类

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

93. 权限指令?

权限设计常用 RBAC:用户—角色—权限,菜单与接口双重校验。

  1. 前端隐藏按钮不等于安全,后端必须鉴权
  2. 拦截器/过滤器校验登录态与角色
  3. 答辩演示管理员与普通用户差异

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

94. Element 表格?

分页限制单次查询数据量,常用 PageHelper 或 LIMIT offset,size。

  1. 前端传 pageNum/pageSize,后端封装 PageInfo
  2. 深分页 offset 过大性能差,可延迟关联优化
  3. 答辩演示列表页分页接口与 SQL

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

95. ECharts?

DispatcherServlet 是 SpringMVC 的核心前端控制器,统一接收并分发 HTTP 请求。

  1. 作为入口协调 HandlerMapping、HandlerAdapter、视图解析等环节
  2. 降低 Controller 与 Servlet API 的直接耦合
  3. 前后端分离项目中仍负责路由到 @RestController

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

96. Vite/Webpack?

applicationContext.xml 是 Spring 核心配置文件,声明 Bean、扫描、数据源等。

  1. 与 spring-mvc.xml 分工:根容器 vs Web 容器
  2. Boot 项目多用 JavaConfig + yml 替代 XML
  3. 答辩对比 SSM 手工装配与 Boot 自动配置差异

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

97. 环境变量?

配置分 dev/test/prod 环境,application-{profile}.yml 或 properties 切换。

  1. spring.profiles.active 指定环境
  2. 敏感信息用环境变量,不入库
  3. 答辩说明本地与服务器配置差异

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

98. 代理跨域?

跨域是浏览器同源策略限制不同源 AJAX 请求,需服务端 CORS 或 Nginx 反代。

  1. @CrossOrigin、WebMvcConfigurer、Filter 均可配置
  2. 允许 Origin、Methods、Headers 需最小化
  3. 前后端分离联调时高频考点

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

99. XSS?

XSS 跨站脚本:恶意脚本注入页面,防护需输出编码、CSP、富文本过滤。

  1. 前端 v-html 谨慎,后端转义用户输入
  2. Cookie 设 HttpOnly 减窃取风险
  3. 答辩结合评论/公告等输入场景说明

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

100. Token 存哪?

系统安全:登录鉴权、密码哈希、参数校验、防 SQL 注入/XSS、防越权、HTTPS。

  1. 不信任前端
  2. 敏感操作二次验证
  3. 答辩逐条对应实现

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

101. 防抖节流?

防抖:停止触发后才执行(搜索);节流:间隔内只执行一次(滚动/按钮)。

  1. 防重复提交
  2. lodash debounce/throttle
  3. 答辩结合搜索框说明

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

102. CSS scoped?

@ResponseBody 将方法返回值直接写入 HTTP 响应体,常用于返回 JSON。

  1. 配合 Jackson 等消息转换器序列化对象
  2. @RestController = @Controller + @ResponseBody
  3. 前后端分离项目几乎全部接口使用该方式

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

103. H5 与小程序差异?

简要结论:API 与包体。

关于「H5 与小程序差异」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

104. 打包部署?

SSM 传统打 war 部署外置 Tomcat;Spring Boot 打 jar 内嵌容器 java -jar 运行。

  1. Maven package 生成可部署包
  2. 注意 profile 与环境配置分离
  3. 答辩能说出部署命令与端口配置

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

105. 首屏优化?

简要结论:压缩按需图片。

关于「首屏优化」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

106. 小程序域名?

简要结论:request upload download。

关于「小程序域名」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

107. 本地 mock?

简要结论:并行开发。

关于「本地 mock」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

108. 组件库选型?

简要结论:Vant/Element 等。

关于「组件库选型」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

109. TypeScript?

DispatcherServlet 是 SpringMVC 的核心前端控制器,统一接收并分发 HTTP 请求。

  1. 作为入口协调 HandlerMapping、HandlerAdapter、视图解析等环节
  2. 降低 Controller 与 Servlet API 的直接耦合
  3. 前后端分离项目中仍负责路由到 @RestController

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

110. 最大前端坑?

简要结论:真实案例。

关于「最大前端坑」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词

111. 如何自测页面?

权限设计常用 RBAC:用户—角色—权限,菜单与接口双重校验。

  1. 前端隐藏按钮不等于安全,后端必须鉴权
  2. 拦截器/过滤器校验登录态与角色
  3. 答辩演示管理员与普通用户差异

结合毕设:在前端页面与接口联调中,可指出具体类名、配置项或表结构,避免只背概念。

112. 答辩重点?

简要结论:交互完整、能演示。

关于「答辩重点」,答辩建议按「概念解释 → 原理要点 → 项目应用」三步展开:

  1. 先用一句话说清定义或结论(如上)
  2. 补充 2~3 个技术要点或注意事项,体现理解深度
  3. 在前端页面与接口联调中,结合自己的代码、配置或表结构举例,避免只背关键词