- 博客(183)
- 资源 (14)
- 收藏
- 关注
原创 json-server的入门
json-server是一个 Node 模块,运行 Express 服务器,你可以指定一个 json 文件作为 api 的数据源。通俗来说, json-server模拟服务端接口数据,一般用在前端人员可以不依赖后端的API开发,而在本地搭建一个JSON服务,快速生成一个REST API风格的后端服务。
2023-08-10 17:33:52
976
原创 【git学习2】多人合作中git的使用
首先确保在master分支上,选中new分支,切换到master分支上,选择Merge new into master,将new分支合并到master分支上。新建文件夹,存放这个拉下来的项目,克隆项目地址,找到vcs,get from Version Control,粘贴url。此时我们的远程仓库就会出现一个new分支,我们就可以在new分支上修改自己的内容,修改完以后,点击顶上绿色的勾。更新master分支,将new分支切换到master分支,点击右上向下箭头,更新master分支。
2023-07-24 15:16:57
444
原创 【git学习】
版本控制分布式版本控制--gitGit环境配置常用的Linux命令Git配置git基本理论工作流程git项目搭建创建工作目录与常用指令本地仓库搭建克隆远程仓库Git文件操作文件的四种状态查看文件状态忽略文件使用github用git实现代码管理的过程。
2023-07-21 16:52:36
442
1
原创 百度前端一面
支持缓存,只有依赖数据发生改变,才会重新进行计算;不支持异步,当 computed 内有异步操作时无效,无法监听数据的变化;computed 属性值会默认走缓存,计算属性是基于它们的响应式依赖进行缓存的。也就是基于 data 中声明过或者父组件传递的 props 中的数据通过计算得到的值;如果一个属性是由其他属性计算而来的,这个属性依赖其他属性 是一个多对一或者一对一,一般用computed;如果 computed 属性值是函数,那么默认会走 get 方法,函数的返回值就是属性的属性值;
2023-04-03 23:00:02
403
原创 【Vue面试题】v-if和v-for为什么不能连用?
在外层嵌套template(页面渲染不生成dom节点),在这一层先进行v-if判断,然后在内部再进行v-for循环如果判断条件出现在循环内部,把需要v-for的值先在computed计算属性中过滤一次。
2023-02-22 16:50:32
409
原创 css复习3
CSS3 中可以通过 box-sizing 来指定盒模型,有2个值:即可指定为 content-box、border-box,这样我们计算盒子大小的方式就发生了改变。为了有效地减少服务器接收和发送请求的次数,提高页面的加载速度,出现了 CSS 精灵技术(也称 CSS Sprites、CSS 雪碧)。2.鼠标经过某个盒子的时候,提高当前盒子的层级即可(如果没有有定位,则加相对定位(保留位置),如果有定位,则加z-index)字体图标可以为前端工程师提供一种方便高效的图标使用方式,展示的是图标,本质属于字体。
2023-02-16 19:39:53
301
原创 css复习2
当上下相邻的两个块元素(兄弟关系)相遇时,如果上面的元素有下外边距 margin-bottom,下面的元素有上外边距 margin-top ,则他们之间的垂直间距不是 margin-bottom 与 margin-top 之和。取两个值中的较大者这种现象被称为相邻块元素垂直外边距的合并。对于两个嵌套关系(父子关系)的块元素,父元素有上外边距同时子元素也有上外边距,此时父元素会塌陷较大的外边距值。对于两个嵌套关系(父子关系)的块元素,父元素上有外边距同时子元素也有上外边距,此时父元素会塌陷较大的外边距值。
2023-02-15 23:43:51
228
原创 css复习
常见的行内元素有 < a>、< strong>、< b>、< em>、< i>、< del>、< s>、< ins>、< u>、< span>等,其中< span> 标签是最典型的行内元素。在行内元素中有几个特殊的标签 —— < img />、< input />、< td>,它们同时具有块元素和行内元素的特点。常见的块元素有< h1>~< h6>、< p>、< div>、< ul>、< ol>、< li>等,其中 < div> 标签是最典型的块元素。这个是用a链接做的,但是a链接是行内元素;
2023-02-15 13:26:01
510
原创 HTML复习1
2.< ul>< /ul> 中只能嵌套 < li>< /li>,直接在 < ul>< /ul> 标签中输入其他标签或者文字的做法是不被允许的。1.< ol>< /ol>中只能嵌套< li>< /li>,直接在< ol>< /ol>标签中输入其他标签或者文字的做法是不被允许的。2.cols=“每行中的字符数” ,rows=“显示的行数”,我们在实际开发中不会使用,都是用 CSS 来改变大小。2.< tr> < /tr> 标签用于定义表格中的行,必须嵌套在 < table> < /table>标签中。
2023-02-14 21:37:18
505
原创 【秋招面经】超星集团前端题目总结
父组件通过props向子组件传值,子组件通过$ emit自定义事件向父组件传值组件之间,不仅限父子组件通过 var Event = new Vue();做为事件的总线,Event.$ emit(事件名,数据)、Event.$on(事件名,data=>{})3)vuex。
2022-11-28 16:21:37
1154
原创 关于HTTP/1.1,HTTP/2和HTTP/3的区别与联系
每当说起http/1.1就会想起以前叫外卖的方式,那个时候很多店都没有专门的外卖员,打电话叫外卖,老板那就会叫人送货来,但是这样的方式有一个很大的问题,店员总是忘记放筷子。于是,店员送完外卖以后,要再送别的东西,就必须再走一趟。如果想要再点一个鸡腿什么的,还必须等到店员回到店里,再送一趟。这种”一次一份“的方式就对应着HTTP/1.1的核心。HTTP/1.1才是互联网的第一个真正意义的HTTP标准版本。为什么说一次一份是这里的核心呢?因为你发送一个http请求的时候,是需要等收到HTTP响应,才可以再
2022-11-16 16:58:35
794
原创 【秋招面经】菜鸟前端题目总结
任意浏览器的默认字体高都是16px。所有未经调整的浏览器都符合: 1em=16pxCSS-两栏布局六种实现方式【css面试题】三角形的做法速度快,减小了页面渲染过程的次数vue 的虚拟 DOM 有什么好处?Cookie的domain以及path详解介绍如何在两个页面之间共享、传输数据,ajax、jsop、cors等相关。
2022-11-13 23:20:29
680
原创 【秋招面经】微盟二面
前后端分离是:软件技术和业务发展到一定程度,在项目管理工作上必须进行的一种升级,他是一个必然而不是一个偶然!说白了,就是公司部门架构的一种调整。轻松理解前后端分离(通俗易懂)包工头都能听明白的前后端分离!
2022-11-05 22:21:29
833
原创 【CSS面试题】vertical-align实现垂直居中
为了解决上述问题:我们写了如下代码进行判断 < / head > < body > < div > < span class = "span1" > 你好星期三 < / span > < span class = "span2" > 请前往东京 < / span > < / div > < / body > < / html >其中为什么我们要将两个span标签都设置display: inline-block;
2022-11-02 21:14:56
240
转载 【JavaScript面试】script标签defer和async的区别
为了解决这个问题就出现了简单的来说,使用这两个属性会有三种可能的情况如果async为true,那么脚本在下载完成后异步执行。如果async为false,defer为true,那么脚本会在页面解析完毕之后执行。如果async和defer都为false,那么脚本会在页面解析中,停止页面解析,立刻下载并且执行。
2022-11-02 14:54:26
218
1
原创 【JavaScript面试】用const声明的常量,能不能被修改?
但对于复合类型的数据(主要是对象和数组),变量指向的内存地址,保存的只是一个指向实际数据的指针,const只能保证这个指针是固定的(即总是指向另一个固定的地址),至于它指向的数据结构是不是可变的,就完全不能控制了。引用数据类型的变量存储在 ‘栈内存’ 中,值存储在 ‘堆内存’ 中,通过指针来指向 ‘堆内存’ 中对应的 值,所以,const定义的 引用数据类型,不可被改变的是 ‘指针’ , 所以可以通过 属性来修改值。const声明只是固定了obj的值,但是值(该对象)里面的内容没有被固定。
2022-10-31 22:51:39
834
原创 【Vue项目回顾】网络模块的封装
这个请求方式默认的就是get请求,当然我们也可以直接设置请求方式,此时还是将其设置为get请求,最终的效果没有什么变化。但是我们不能在这里接收结果,我们需要把这个结果给调用者传出去,而且这里也有可能会出现异常,我们也需要把这个异常传出去。在开发中,有的时候需要发送两个请求,并且这两个请求最终都达到以后再做一个功能(发送多个并发请求,同时到达以后再做进一步的处理)(相当于拦截了config,但是没有给它返回,最终还是拿不到这个config,内部发送请求的时候,它里面所有的信息都拿不到了)
2022-10-30 23:46:39
384
原创 vue脚手架配置路径别名
在vue-cli 2.x项目中,进入build文件夹,找到webpack.base.conf.js,编辑文件 ,并找到resolve字段的配置项(webpack.config.js 是基于webpack(开源的前端打包工具)的配置文件。虽然我们知道了文件被藏到什么地方,但一般我们不修改node_modules中的文件。所以我们可以在项目的根目录下创建一个vue.config.js文件,用来配置路径别名,它会被 @vue/cli-service 自动加载,前提是该文件一定要存在于项目的根目录下。
2022-10-30 16:19:33
1011
转载 前端运行时依赖和开发时依赖的区别?
开发依赖的目的是为了减少插件在安装依赖时node_modules的所占的内存,提升安装依赖的速度,节省线上及其的硬盘资源以及部署上线的时间。
2022-10-29 23:43:34
731
原创 【Vue项目复习笔记】tabbar的封装
如果在下方有一个单独的TabBar组件,你如何封装自定义TabBar组件,在APP中使用让TabBar出于底部,并且设置相关的样式TabBar中显示的内容由外界决定定义插槽flex布局平分TabBar自定义TabBarItem,可以传入 图片和文字定义TabBarItem,并且定义两个插槽:图片、文字。给两个插槽外层包装div,用于设置样式。填充插槽,实现底部TabBar的效果传入 高亮图片定义另外一个插槽,插入active-icon的数据。
2022-10-29 23:30:54
2090
1
原创 【Vue面试】Vue-Router路由模式?
通过history.pushState 使用它做页面跳转不会触发页面刷新,使用window.onpopstate 监听浏览器的前进和后退,再做其他处理。URL的hash也就是锚点(#), 本质上是改变window.location的href属性.history接口是HTML5新增的, 它有五种模式改变URL而不刷新页面.因为 history.back() 等价于 history.go(-1)history.forward() 则等价于 history.go(1)这三个接口等同于浏览器界面的前进后退。
2022-10-29 16:32:33
148
原创 【秋招面经】微盟前端题目总结
说下页面布局的方式flex 的属性及使其垂直居中的方式隐藏页面中某个元素的方法CSS 选择器及优先级CSS 盒子模型BFC 概念、规则、触发方式加载css的是否会阻塞浏览器的解析和渲染Sass 如何实现复用Sass 中mixin 如何使用说下浏览器的存储浏览器的缓存协商缓存的过程js事件模型有哪几种说下闭包闭包应用的场景节流防抖使用过的ES6 方法ES6里的 set 和 map箭头函数的特性apply与bind的区别。
2022-10-29 16:10:13
1516
原创 【CSS面试】BFC的理解?
可以将BFC看成页面中的一块渲染区域,它有着自己的渲染规则.简单来讲,BFC可以看作是元素的一种属性,当元素拥有了BFC这个属性的时候,这个元素就可以看作是隔离了的独立容器.容器里面的元素不会在布局上影响到外面的元素.
2022-10-26 22:41:59
496
原创 【Vue面试】Mixin混入的理解
将组件的公共逻辑或者配置提取出来,哪个组件需要用到时,直接将提取的这部分混入到组件内部即可。这样既可以减少代码冗余度,也可以让后期维护起来更加容易。
2022-10-26 22:16:27
511
转载 深拷贝的实现方法和注意事项
上段代码解决了我们循环引用的问题,主要利用了WeakMap()这个方法,它的作用其实主要就是创建一个缓存表,我们深拷贝时,会先判断该属性值是否在缓存表当中,存在则说明是循环引用。Object.assign()是一种比较简单的深拷贝方法,其实说它是深拷贝,一点都不严谨,因为它只会拷贝第一层,也就是当对象内嵌套有对象的时候,被嵌套的对象进行的还是浅拷贝。深拷贝:深拷贝是指,拷贝对象的具体内容,二内存地址是自主分配的,拷贝结束之后俩个对象虽然存的值是一样的,但是内存地址不一样,俩个对象页互相不影响,互不干涉。
2022-10-26 21:41:17
814
原创 Vuex页面刷新数据丢失的问题
Vuex只是在内存保存状态,刷新之后就会丢失,如果要持久化就要存起来。localStorage就很适合,提交mutation的时候同时存入localStorage,store中把值取出作为state的初始值即可。这里有两个问题,不是所有状态都需要持久化;如果需要保存的状态很多,编写的代码就不够优雅,每个提交的地方都要单独做保存处理。这里就可以利用vuex提供的subscribe方法做一个统一的处理。甚至可以封装一个vuex插件以便复用。
2022-10-26 19:41:03
6073
原创 【什么是 Nodejs ?】
V8 引擎借鉴了 Java 虚拟机和 C++ 编译器的众多技术,它将 JavaScript 代码直接编译成原生机器码,并且使用了缓存机制来提高性能,这使得 JavaScript 的运行速度可以媲美二进制程序。Node.js 是一个 JavaScript 运行时,它让 JavaScript 脱离了浏览器环境,可以直接在计算机上运行,极大地拓展了 JavaScript 用途。我们应该将 JavaScript 和 Python、Java、Ruby 等其它编程语言同等对待,不能再将它视为一种“小玩意”。
2022-10-26 17:36:36
676
原创 关于媒体查询和rem单位
媒体查询(Media Query)是CSS3新增的语法。使用@media查询,可以针对不同的媒体类型定义不同的样式@media可以针对不同的屏幕尺寸设置不同的样式当你重置浏览器大小的过程中,页面也会根据浏览器的宽度和高度重新渲染页面目前针对很多苹果手机、Android手机,平板等设备都用得到媒体查询。
2022-10-25 21:59:18
1294
原创 Vue CLI相关
如果你在开发大型项目, 那么你需要, 并且必然需要使用Vue CLICLI是Command-Line Interface, 翻译为命令行界面, 但是俗称脚手架。Vue CLI是一个官方发布 vue.js 项目脚手架。使用 vue-cli 可以快速搭建Vue开发环境以及对应的webpack配置Vue CLI的使用安装Vue脚手架Vue CLI2初始化项目Vue CLI3初始化项目Vue CLI2详解目录结构详解简单总结Runtime-CompilerRuntime-only为什么存在这样的
2022-10-22 23:38:05
143
原创 【JavaScript面试】小问题合集
JavaScript 内部,所有数字都是以64位浮点数形式储存,即使整数也是如此。所以,1与1.0是相同的,是同一个数。0.1 + 0.2 不等于0.3 ,因为浮点数表示小数的时候有精度损失。
2022-10-22 23:10:07
195
原创 【前端笔试】知识点总结3
以下哪种操作对网页的SEO是没有帮助。D 使用语义化的HIML标签。行内元素和块级元素的区别?A 合理安排重要内容的位置。
2022-10-22 23:07:53
350
原创 vuex的工作原理
当我们的某一个数据必须经过一系列的变换的时候。另外我们还用到了devtools这个工具,如果直接修改state的话,它是没有办法跟踪的,而vue提供这个工具是为了帮助我们在多个界面都来修改state,它希望做一个跟踪,这时当某一个界面修改这个state修改错误它就可以跟踪到是哪里修改错了,再做相关的调试。我们知道,在国内我们有很多的信息需要被记录,比如上学时的个人档案,工作后的社保记录,公积金记录,结婚后的婚姻信息,以及其他相关的户口、医疗、文凭、房产记录等等(还有很多信息)。
2022-10-22 22:41:09
2024
原创 【秋招面经】金山前端题目总结
(HTTP协议是通过文本定义的,不同字段之间通过空格区分)项目:1.作为项目负责人怎么做的?2.项目难点3.虚拟列表的使用4.项目优化5.项目路由导航Vue:1.Vue生命周期钩子、用过哪些?2.< keep-alive>的钩子中实例有没有被删除?3.computed和watch的区别?如果在mounted中不断修改data,computed会不会被触发?进一问了实例在各种步骤时有没有产生。4.Vue组件通信的常用方法?5.怎么在原生JS中写Vuex?
2022-10-20 23:06:16
3288
原创 【秋招面经】海能达前端题目总结
原理:HashRouter的原理:通过window.onhashchange方法获取新URL中hash值,再做进一步处理HistoryRouter的原理:通过history.pushState 使用它做页面跳转不会触发页面刷新,使用window.onpopstate 监听浏览器的前进和后退,再做其他处理详解路由懒加载。
2022-10-20 20:13:13
863
ECharts数据可视化项目,pink老师b站视频资源
2022-09-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人