# fed-e-task-03-06 **Repository Path**: learning-summary/fed-e-task-03-06 ## Basic Information - **Project Name**: fed-e-task-03-06 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-03-18 - **Last Updated**: 2021-04-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 1.说说 application/json 和 application/x-www-form-urlencoded 二者之间的区别。 application/x-www-form-urlencoded 是以form data 形式传参 到后端,拼接形式为a=1&2,用qs.stringfy()方法可以默认以urlencoded形式传参,
applicaiton/json 是以json形式传参 {a:1, b: 1}, 需要剑content-type设为applicaiton/json ### 2.说一说在前端这块,角色管理你是如何设计的。 不同用户对应不同角色,不用角色有不同的权限, 先给用户分配角色,然后给角色分配权限就可以了 ### 3.@vue/cli 跟 vue-cli 相比,@vue/cli 的优势在哪? - 提供了Gui可视化工具 - 可选选择vue3的项目 ### 4.详细讲一讲生产环境下前端项目的自动化部署的流程 使用gitlab, 然后监听git push或者merger事件,配置url发送post消息,然后jenkins负责接受的post消息,
执行构建脚本命令,然后将构建好的代码通过ssh上传至服务器 ### 5.你在开发过程中,遇到过哪些问题,又是怎样解决的?请讲出两点。 - 微信浏览中授权sessionstorage存储丢失 原因:微信授权,会先通过location.href跳转到微信的url的地址,这个过程中相当于重新刷新了页面,sessionStorage重置,
解决方案: 1. 将参数通过redirect_uri传递给微信,微信再跳转回来。2.用localstorage配合vuex持续化存储 - bms后台管理系统首次加载需要40s 原因:通过 npm run build --report命令查看分包大小,发现有app.js以及其他比较大的包很大阻塞了住,整体加载时间过程
解决方案: 1. 通过cdn,将vue、vue-router、vuex、elementui等主包用cdn的形式引入到index.html,配合weback的exteral 属性排除这些包的引入。 2. 加上preload。 3. 然后用splintchunks将那些比较大的包拆分成比较小的包 ### 6.针对新技术,你是如何过渡到项目中? 针对比较老的业务,先不动他,新的业务线慢慢引入新技术,徐徐图之,后面慢慢有时间了就将新技术引入到老业务上。