
前端
文章平均质量分 63
阿莹yes
积极ing
展开
-
react原理及合成事件原理
React合成事件是React框架中非常重要的一部分,它通过事件委托、事件池和统一化事件处理等机制,提供了高效、跨浏览器的事件系统。使用React合成事件可以有效地提高性能,简化开发流程,并保证事件处理函数在不同浏览器下的致性。因此,掌握React合成事件的原理和使用方法对于React开发者来说是非常重要的。简单说就是:react是在原生浏览器的枝上做了一层封装,把对应事件做了一次合成,最大的好处是合成事件可以匹配不同浏览器之间的差异,比如事件委托、事件池、事件合并这些。原创 2023-11-20 13:41:43 · 864 阅读 · 0 评论 -
解决sourcetree中推送不显示分支 - 软件篇
原文链接:https://blog.youkuaiyun.com/qq_60976312/article/details/126647355。众所周知:在我们没有新创建分支的情况下,他会默认有一个master分支,这也是我们的主分支。再重新打开git,点击推送的时候分支就出现了。推送的弹窗里不回显示我们的分支;如上图所示,在我们使用。原创 2023-06-28 20:31:46 · 1018 阅读 · 0 评论 -
函数柯里化 - js篇
Javascript高级程序设计(第3版):用于创建已经设置好了一个或多个参数的函数。基本方法是使用一个闭包返回一个函数。维基百科:柯里化(英语:Currying),是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术。用大白话来说就是只传递给函数一部分参数来调用它,让它返回一个新函数去处理剩下的参数。输入是一个函数,并且这个函数拥有n个参数输出也是一个函数,并且可以使用fn()()()这种方式调用。原创 2023-06-27 10:44:15 · 393 阅读 · 0 评论 -
创建ssh密钥并向gitlab添加完整流程 - 前端
3、或者你也可以直接打开你用户(一般都是 Administrator)下的 .ssh 文件夹,打开它里面的 id_rsa.pub 文件。d. 查看公钥:cat id_rsa.pub 或者 vim id_rsa.pub。2、或者你也可以直接输入命令 :cat ~/.ssh/id_rsa.pub。查看是否生成了id_rsa和id_rsa.pub。b. 进入 .ssh 目录:cd ~/.ssh。c. 找到 id_rsa.pub 文件:ls。a. 打开你的 git bash 窗口。原创 2023-06-21 15:05:01 · 4579 阅读 · 0 评论 -
前端入职第一天安装程序及配置环境
前端入职第一天配置环境原创 2023-06-16 13:54:48 · 1155 阅读 · 0 评论 -
[‘1‘, ‘2‘, ‘3‘].map(parseInt) - js篇
规定使用10,但是并不是所有的浏览器都遵循这个规定。一个介于2和36之间的整数(数学系统的基础),表示上述字符串的基数。方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。开头, 基数是8(八进制)或者10(十进制),那么具体是哪个基数由实现环境决定。回调函数需要三个参数, 我们通常只使用第一个参数 (其他两个参数是可选的)。函数解析一个字符串参数,并返回一个指定基数的整数 (数学系统的基础)。以其它任何值开头,则基数是10 (十进制)。数组中正在处理的当前元素的索引。原创 2023-06-11 10:28:25 · 595 阅读 · 0 评论 -
数组扁平化的8种方法 - js篇
用简单的话来说,就是将一个。原创 2023-06-05 19:12:04 · 1638 阅读 · 0 评论 -
var的变量提升和函数提升 - js篇
代码之前首先对齐进行编译,编译过程中的一部分工作就是找到所有的声明,并用合适的作用域将他们关联起来,这也正是词法作用域的核心内容。且不会被变量声明覆盖。原创 2023-05-31 09:37:44 · 293 阅读 · 0 评论 -
关闭eslint - vue篇
我们在开发vue项目的时候,创建的时候可能会不小心选择了eslint,这个检测规则对于新手来说,简直就是噩梦,会让你崩溃。这些方法基本足以解决这个问题了,但是笔者还是建议各位有了一定开发经验的时候,用上这个检测文件,不仅能培养自己良好的编程习惯,而且容易和团队其他人保持一个风格。上图红框框部分,我项目中的文件内容是这样的,其他项目可能有别的一些内容,我们把框框中的内容注释掉或者去掉就可以了。有这个文件的话,就直接修改这个文件就可以解决。文件,把你不需要校验的文件添加进去即可,文件都不进行校验了,同理,原创 2023-05-22 19:22:17 · 5007 阅读 · 7 评论 -
使用scss报错的解决方案-vue篇
总结一下大概就是要安装跟node版本匹配的node-sass和,如果使用的都是最新版本,直接执行以下指令即可或这里的–save-dev和–save的区别只是下载到里的或,两者区别在于前者是在本地环境用到的依赖,后者是在开发环境需要用到的依赖,只在本地开发的话–save-dev即可。踩坑,留下足迹~原文链接:https://blog.youkuaiyun.com/August_802/article/details/124985920。原创 2023-05-18 09:31:15 · 1080 阅读 · 0 评论 -
vue中引入scss依赖的步骤 - vue篇
SCSS是一种CSS预处理语言定义了一种新的专门的编程语言,编译后形成正常的css文件,为css增加一些编程特性,无需考虑浏览器的兼容性(完全兼容css3),让css更加简洁、适应性更强,可读性更佳,更易于代码的维护等诸多好处。CSS预处理语言有SCSS (SASS) 和LESS、POSTCSS。原创 2023-05-15 21:32:42 · 1860 阅读 · 0 评论 -
getaddrinfo ENOTFOUND localhost - vue篇
时,报错根据报错内容,基本断定是localhost的问题,很有可能是localhost没有绑定127.0.0.1亲测有效!原创 2023-05-14 12:01:17 · 1468 阅读 · 0 评论 -
rem、px、em的区别 -前端
在做项目的时候用什么单位长度取决于你的需求,我一般是这样的:1、像素(px):用于元素的边框或定位。2、em/rem:用于做响应式页面,不过我更倾向于rem,因为em不同元素的参照物不一样(都是该元素的父元素),所以在计算的时候不方便,相比之下rem就只有一个参照物(html元素),这样计算起来更清晰。1、rem和em单位是由浏览器基于你的设计中的字体大小计算得到的像素值。2、em单位基于使用他们的元素的字体大小。3、rem单位基于html元素的字体大小。4、em。原创 2023-05-12 15:11:37 · 750 阅读 · 0 评论 -
input限制的正则表达式
input限制的正则表达式。原创 2023-03-13 12:15:40 · 1966 阅读 · 0 评论 -
页面显示超时的问题处理-uniapp
使用构造函数代替 // 格式。原创 2023-02-20 14:16:57 · 377 阅读 · 0 评论 -
new Date() 使用 --- js篇
year的值为:需设定的年份-1900。例如需设定的年份是1997则year的值应为97,即1997-1900的结果。所以Date中可设定的年份最小为1900;hrs的值域在0~23之间。从午夜到次日凌晨1点间hrs=0,从中午到下午1点间hrs=12;month的值域为0~11,0代表1月,11表代表12月;min和sec的值域在0~59之间。date的值域在1~31之间;将字符串形式的日期转换成日期对象。原创 2023-02-13 09:26:46 · 984 阅读 · 0 评论 -
缺少nodejs环境,请在设置中配置nodejs的安装路径 - uniapp
运行到微信小程序内置环境原创 2022-09-22 09:02:18 · 8431 阅读 · 3 评论 -
webpack打包 - webpack篇
webpack 打包流程原创 2022-08-10 17:08:38 · 829 阅读 · 0 评论 -
vue及rect面试点(更新中) - 面试篇
文章目录一、事件的执行顺序阻止事件冒泡的方式二、事件循环 EventLoop三、异步编程的方法1.回调函数2.事件监听3.发布/订阅 | 观察者模式4.Promise 对象5.Generator 函数6.async 与 await四、call、apply、bind 的区别call fn.call(obj, 1, 2);apply fn.apply(obj, [1, 2]);bind fn.bind(obj, 1, 2);五、vue 和 react 中不被渲染出来的标签六、js 里 for..in 和 for原创 2022-04-30 18:27:37 · 1421 阅读 · 0 评论 -
React修炼之Model篇详解 - React篇
React修炼之Model篇详解import * as usersService from '../services/users';export default { /* * 当前 Model 的名称。整个应用的 State,由多个小的 Model 的 State 以 namespace 为 key 合成 */ namespace: 'users', /* * state: 该 Model 当前的状态。数据保存在这里,直接决定了视图层的输出原创 2021-08-10 15:34:17 · 1708 阅读 · 0 评论 -
DOMException: play() failed because the user didn‘t interact with the document first - video篇
报错原因是chrome新特性,内容大致意思是开发者不能利用手中权限去给用户造成噪音干扰,首次加载页面需要用户和audio/video进行交互解决办法1.视频 要静音播放muted// video标签上加这个属性当用户首次进入页面时给提示用户启用告警铃声let audioPlay = document.getElementById('myaudio')audioPlay.play()setTimeout(() => { audioPlay.pause() audio.原创 2021-05-06 14:31:46 · 2462 阅读 · 0 评论 -
微信内h5页面下拉出现空白 - 问题篇
微信自带浏览器,h5页面下拉时出现空白区域解决方式可以用禁止微信内h5页面下拉的方法document.body.addEventListener('touchmove', function (e) { e.preventDefault() }, { passive: false })踩坑,留下足迹~...原创 2021-04-08 11:56:51 · 1589 阅读 · 0 评论 -
Vue双向绑定原理-数据劫持和发布订阅 - Vue篇
目录原理介绍DEMO实现双向绑定第一部分是Observer:第二部分是Watcher:第三部分是Dep:Vue中的双向绑定Vue中的Observer:Vue中的Dep:Vue中的Watcher:总结一下原理介绍Vue.js是通过数据劫持以及结合发布者-订阅者来实现双向绑定的,数据劫持是利用ES5的Object.defineProperty(obj, key, val)来劫持各个属性的的setter以及getter,在数据变动时发布消息给订阅者,从而触发相应的回调来更新视图。双向数据绑定,简单点来说分为原创 2021-03-10 01:03:10 · 874 阅读 · 0 评论 -
运行项目页面显示“该网页无法正常运作”的解决办法 - 前端篇
文章目录config/index.jsbuild/webpack.dev.conf.js接到项目源码,运行时,发现项目正常起服务,但是网页里打不开页面。下面介绍一下我的解决步骤config/index.js这个文件里查看一下配置代码;host 先改为是localhost。如果是域名,那需要在本地host文件内配置一下ip 指向 域名。build/webpack.dev.conf.js这个文件里,看下有没有以下的代码。 如果有,需要注释掉。disableHostCheck: true,h原创 2020-12-01 11:15:38 · 10119 阅读 · 0 评论 -
vuex的5个属性的用法 - vue篇
文章目录创建vuex.js配置依赖import vue from 'vue'import vuex from 'vuex'Vue.use(vuex);exoprt var store default new Vuex.Store{ state:{},//定义属性值 mutations:{},//设置方法函数,注意:mutations不能有异步处理,因为有异步处理程序会很调试,devtooles也会很难追踪到状态 actions:{},//用来处理mutatuions的异步原创 2020-11-09 21:17:59 · 458 阅读 · 0 评论 -
cookie、localStorage、sessionStorage的区别 - 前端篇
前端浏览器的缓存方式:cookie、localStorage、sessionStorage的区别区别特性CookieLocalStorageSessionStorage数据的生命周期一般由服务器生成,可以设置失效时间。如果在浏览器生成,默认是关闭浏览器之后失效除非被清除,否则永久保存仅在当前会话有效,关闭页面或浏览器后被清除存放数据大小4KB一般5MB一般5MB与服务端通信每次都会携带在HTTP请求头中,如果使用cookie保存过多数据会带来性能问题.原创 2020-11-09 16:00:36 · 96 阅读 · 0 评论 -
gulp核心方法 - gulp篇
五个核心的方法:gulp.task('任务名‘,function(){}) // 创建任务gulp.src('./*.css') // 指定想要处理的文件gulp.dest() // 指定最终处理后的文件的存放路径gulp.watch() // 自动监视文件的变化,然后执行相应的任务gulp.run('任务名’) // 直接执行相应的任务在npm中安装:npm install gulp-cli -g在项目的中也要安装gulp npm install gulp --save(原创 2020-11-08 21:57:02 · 253 阅读 · 0 评论 -
服务器端渲染(SSR) Vuejs - vue篇
文章目录什么是服务器端渲染(SSR)服务器端渲染有哪些好处1.准备工作2. 创建项目操作一下出处:https://www.jianshu.com/p/8fbfbe537a9b什么是服务器端渲染(SSR)为了良好的用户体验和前后端分离,大多前端项目都是单页应用,modern 框架基本都是构建客户端应用程序的框架。通常情况下,负责在浏览器中输出组件,进行生成 DOM 和操作 DOM 来实现用户交互。然而,也可以将同一个组件渲染为服务器端的 HTML 字符串,将它们直接发送到浏览器,最后将静态标记"混合原创 2020-11-08 11:25:17 · 354 阅读 · 0 评论 -
前后端交互的数据格式类型 - 前后端交互篇
前后端的交互数据格式有:json、xml及from表格;JSON: 使用json数据结构,传输效率高,解析简单;(主流的数据格式)XML: 具有跨平台,跨语言的特点;(基本不怎么用了)YAML: 是一种直观的能够被电脑识别的数据序列化格式.(博主没用过。)from:不常用但是要知道XML扩展留下足迹!!!...原创 2020-11-07 11:31:38 · 3722 阅读 · 0 评论 -
Vue Router数据获取 - vue篇
目录数据获取导航完成后获取数据在导航完成前获取数据数据获取有时候,进入某个路由后,需要从服务器获取数据。例如,在渲染用户信息时,你需要从服务器获取用户的数据。我们可以通过两种方式来实现:导航完成之后获取:先完成导航,然后在接下来的组件生命周期钩子中获取数据。在数据获取期间显示“加载中”之类的指示。导航完成之前获取:导航完成前,在路由进入的守卫中获取数据,在数据获取成功后执行导航。从技术角度讲,两种方式都不错 —— 就看你想要的用户体验是哪种。导航完成后获取数据当你使用这种方式时,我原创 2020-11-04 17:31:15 · 1828 阅读 · 0 评论 -
webpack性能优化 - webpack篇
目录webpack 性能优化前言分析打包速度分析影响打包速度环节优化搜索时间优化解析时间thread-loader(webpack4 官方推荐)优化压缩时间terser 是什么启动多进程优化二次打包时间cache-loaderHardSourceWebpackPluginwebpack 性能优化前言webpack 打包优化并没有什么固定的模式,一般我们常见的有话就是拆包、分块、压缩等,并不是对每一个项目都适用,针对特定项目,需要不断调试不断优化。对于 webpack4,建议从零开始配置,在项目初期原创 2020-11-01 10:18:35 · 681 阅读 · 1 评论 -
watch监听一个对象中的属性 - Vue篇
目录1.监听一个对象2.监听对象内的某个属性3.回顾一下watch的使用vue中提供了watch方法,可以监听data内的某些数据的变动,触发相应的方法。例: data() { return { search: { name: '', code: '', timePicker:[] } }}1.监听一个对象监听searchwatch: { search: { handler(newVal, oldVal) { //todo原创 2020-10-28 14:34:59 · 38072 阅读 · 0 评论 -
webpack知识点 - 前端篇
目录核心概念打包流程构建流程核心概念:Loader参考自: https://juejin.im/user/307518985745895作者: 百应前端团队 @双鱼核心概念entry:入口。webpack是基于模块的,使用webpack首先需要指定模块解析入口(entry),webpack从入口开始根据模块间依赖关系递归解析和处理所有资源文件。output:输出。源代码经过webpack处理之后的最终产物。loader:模块转换器。本质就是一个函数,在该函数中对接收到的内容进行转换,返回转原创 2020-10-27 22:24:17 · 872 阅读 · 2 评论 -
给el-table表头加必选星号 - vue篇
目录操作步骤操作步骤html代码<el-table-column label="'数量'" :render-header="addRedStar"></el-table-column>js代码methods: { addRedStar(h, { column }) { // 给表头加必选标识 return [h('span', { style: 'color: red' }, '*'), h('span', ' ' + column.label)]原创 2020-10-18 19:27:48 · 2019 阅读 · 1 评论 -
npm 报错 “Unexpected end of JSON input while parsing near ‘...cGZb4OYe9e+g3wCdPKOuE‘” - node篇
目录解决方式使用npm install 时报错 Unexpected end of JSON input while parsing near '...cGZb4OYe9e+g3wCdPKOuE'解决方式npm cache clean --force 清除缓存npm install 重新安装踩坑,留下足迹!!!参考文章[1]https://blog.youkuaiyun.com/slyslyme/article/details/86421820...原创 2020-10-15 18:16:43 · 117 阅读 · 0 评论 -
npm install 报错 - node篇
目录报错信息解决方法结果报错信息Error: sha1-U3cWwHduTPeePtG2IfdljCkRsbE= integrity checksum failed when using sha1: wanted sha1-U3cWwHduTPeePtG2IfdljCkRsbE= but got sha512-MC/KlxRJ1rzL3ZUUUbybGjuzlAwjlN7YBIGwm8MLPbx1YV8NeRP7dcdWdRRJ/P3gJEZOeoJrZo28xMSRu99RcQ== sha1-gsw原创 2020-09-20 10:50:50 · 475 阅读 · 0 评论 -
15个Vue.js高级面试题 - Vue篇
目录1.呈现项目列表时,“关键”属性的作用和重要性是什么?2.您将如何在模板中呈现原始HTML?3.什么是vue-loader?4.什么是mixin?5.在开发期间,如果您的Vue应用程序和后端API服务器未在同一主机上运行,则如何代理API请求。假设使用Vue-CLI 3进行设置?6.道具如何指定道具的类型要求?7.什么是虚拟DOM?8.什么是Vue插件?9.什么是渲染功能?举个例子。10.哪个生命周期挂钩最适合从API调用中获取数据?11.什么时候调用“更新的”生命周期挂钩?12.在Vue实例中编写原创 2020-08-04 22:38:04 · 2294 阅读 · 0 评论 -
解决每次git pull 都需要密码的情况 - git篇
目录拉取新项目代码问题解决办法拉取新项目代码// 一般操作 git clone **git pull origin master问题拉取时需要输入密码解决办法网上查找了之后,我的解决办法是:cd 代码目录文件夹git config --system credential.helper manager //启用认证凭证缓存然后再git pull origin master,就不用输入密码了。参考链接:[1]https://blog.youkuaiyun.com/qq_31772441/arti原创 2020-06-30 21:45:36 · 752 阅读 · 0 评论 -
如何运行一个Vue项目 - Vue入门篇
目录前言安装node.js安装cnpm安装vue-cli脚手架构建工具用vue-cli构建项目安装项目所需的依赖运行项目前言一开始很多刚入手vue.js的人,会扒GitHub上的开源项目,但是发现不知如何运行GitHub上的开源项目,很尴尬。通过查阅网上教程,成功搭建好项目环境,同时对前段工程化有了朦朦胧胧的认知,因此将环境搭建过程分享给大家。首先,列出来我们需要的东西:node.js环境(npm包管理器)vue-cli 脚手架构建工具cnpm npm的淘宝镜像安装node.js从nod原创 2020-06-19 10:42:05 · 1476 阅读 · 0 评论 -
23个Vue.js初级面试题 - Vue篇
目录1.为什么Vue被称为“渐进框架”?2.Vue.js中的声明式渲染是什么?3.你用哪个指令遍历对象的属性?4. 给出模板,描述 Vue 程序的输出5.如何在输入框和数据属性之间实现双向数据绑定?6.你如何捕获元素上的点击事件?7. 什么是动态 prop?8. Vue.js 中的指令是什么?9. v-show 指令的用途是什么?10. v-show 与 v-if 指令有何不同?11. 对于作为元素实现的注释框,我们希望使用户能够按下键盘上的Enter键,来将内容提交给名为 “storeComment” 的原创 2020-06-18 22:26:39 · 1513 阅读 · 0 评论