首页
首页
BOT
沸点
课程
直播
活动
AI刷题
NEW
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
项目面试
南桥春雪君归处
创建于2023-02-08
订阅专栏
分享项目面试基础
等 1 人订阅
共21篇文章
创建于2023-02-08
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
单点登录
服务器有两种 一种是业务后台服务器(淘宝服务器 天猫服务器)sso服务器(单点登录认证服务器) 思路 用户访问某个业务后台服务器,需要登录,发现没有token,这个时候就跳转到sso登录页面 用户登录
webpack
webpack是一个前端模块打包器 核心概念:mode 设置打包环境(production,development) entry 入口 output 出口 loader 加载器 plugins 插件
项目性能优化(vue项目优化)
代码层面 路由懒加载 图片懒加载 虚拟列表 第三方UI库按需引入 防抖 节流 封装组件 因为组件就可以被复用 想办法减少减少重绘和回流 documentFragment文档碎片 比如我们要页面加100
大文件断点上传
核心:切片 hash值 续传 多线程 先把大文件进行切片 然后把每个切片设置一个唯一的hash值 为了提升上传的速度,这里面是使用多线程上传(webWorker) 服务器拿到上传请求,比对切片hash
长列表性能优化
问:一下子返回100万条数据列表怎么渲染 不能直接渲染,直接卡死 解决的办法 PC端 分页 移动端 虚拟列表 思路:永远只让页面显示50条数据,用公式当前应该显示的是哪些数据,然后把之前页面销毁,创建
柯里化函数、thunk函数
柯里化函数:多参函数变成单参函数 好处是可以实现参数的复用 thunk函数:多参函数变成单参函数,参数必须是回调函数
异步你怎么理解
js代码执行的顺序是:先同步代码,再微任务,再宏任务 问:微任务和宏任务区别 微任务属于ecmascript内置的语法,比如promise,async,await 宏任务属于webapi的东西,本质是
大数字问题
遇到的场景:我们后台ajax拿回来的数据用axios发现数据和后台不一致,我们发现这里面就是因为数字超过2的53次方 解决办法就是用BigInt新的数据结构 后面加一个n 具体做 axios请求配置t
axios取消请求
官网解释: - https://www.axios-http.cn/docs/cancellation 应用:tab切换的时候,你在一个标签,立即切到另一个标签,刚刚标签对应ajax浪费,所以可以取消
模块化的规范
commonjs模块化规范 导入 require 导出 module.exports es6的模块化规范 导入 import 导出 export ,export default
你们的项目是如何打包部署的
你们的项目是如何打包部署的, +yarn build得到dist把dist给后台 + 打包的优化(cdn)
项目流程
需求评审会 产品经理出原型图 ui设计师根据原型出设计稿 我们前端开始搭建项目的架子,写静态页面 后端有了接口,根据接口文档和接口url进行接口联调 完成项目功能 进行自测和测试人员的测试,冒烟测试/
权限设计和实现
路由权限 路由分为两块,静态路由和动态路由,静态路由是谁都有的,动态路由是我们登录之后,后端返回一个标识的数组menus,我们根据这个来进行筛选,然后通过addRoutes加到静态路由中 按钮级别的权
文章阅读记忆如何实现?一个组件被缓存,怎么刷新页面数据?
keep-alive,activate,deactivate deactivate离开的时候把位置记住,在activate进入的时候再滚动到这个位置
图片懒加载的原理
以前的玩法是判断图片有没有到可视区,判断图片到文档顶部的距离是不是和视口的高度加上滚动的距离一样,事件是用onscroll,这种方式性能不好 现在还有一种新的api intersetion Obser
axios的原理
用promise包装原生ajax的api resolve中返回ajax成功的请求 reject中返回ajax失败的请求
项目中的 axios 咋用的?
在src/utils文件中创建一个request.js 在request.js文件夹中通过axios.create对axios进行二次封装 在src/api中引入request.js文件,并且封装项目
token无感刷新
token的无感刷新一般多用语言移动端项目 后台返回是有二个token,一个是普通token,一个是refresh_token,前面的时间是2小时,后面的时间长一点比如2天 如果token过期了,我们
你的项目中,是如何实现登录功能的?
给表单绑定click事件,发送ajax拿token 把token存到vuex中,并且要用vue-persisdata插件进行持久化或直接用本地存储 我们在路由守卫中beforeEach中判断有没有to
组件化的思想
平时在工作中遇到多个页面有同样的代码就可以考虑封装成组件,封装要考虑的组件维护性、复用性和灵活性 props $emit slot
下一页