跳至内容

node gyp Error: Could not find any Visual Studio installation to use

这两天买了M2的硬盘,重装了系统,所有项目要重新装依赖,在安装NestJS依赖的时候,遇到了臭名昭著的node-gyp报错,这个库从我很小很小的时候就知道它很臭,下面是报错信息: 如果遇到这个问题,其实不需要你安装什么vs tools,我看网上一堆说需要安装,你可以试试运行: 先把Package Lock文件删掉,再运行上面这个命令,然后再运行install…

JavaScript基础知识:什么是闭包?底层原理分析

最近SEO禅在巩固复习前端知识,看了看对闭包的解释,网上的说法有很多种,这篇文章主要分享自己对闭包的理解,如果有什么说错的地方,欢迎指正留言评论。 什么是闭包? 在谷歌和百度搜索了下什么是闭包,你能得到至少3种以上的说法,比如说: 闭包是一个函数,这个函数能访问外部函数的变量 闭包是由函数嵌套而成的作用域链 闭包是指可以访问其所在作用域的函数 闭包是指有权访…

JavaScript基础知识:搞定Promise,手写Promise代码实现

最近SEO禅都在巩固复习基础知识,把自己对前端基础知识的理解记录下来,这些都是自己的看法,并不一定对,SEO禅只是觉得这样理解对自己来说合情合理,符合逻辑,所以要是觉得SEO禅有哪里说错的地方,可以评论留言指出,欢迎批判指正。 Promise是什么? 首先学习Promise之前,我们要搞清楚Promise是什么的问题,引用MDN上面的一句话: 本质上 Pro…

TypeScript基础知识:Type 和 Interface的区别

在学习TypeScript的时候,SEO禅觉得最迷惑的地方就是Type和Interface到底有什么区别?看着好像没什么区别?那为什么要有这两个不同的关键字呢,找到一篇文章说的还不错,翻译过来分享给各位。 声明合并 通常我们使用type都是作为变量或者参数的限定类型,interface更倾向于OOP的编程思维,相当于定义一个接口,和他的名字差不多,通常他们可…

前端开发命名规范文档

这篇文章是SEO禅在推进前端团队命名规范总结整理的,这里分享给各位,有需要的朋友可以看看,有什么问题可以留言评论。 命名方法论介绍 现在市面上流行的几中命名方法有如下5种: 驼峰命名法(camelCase) 驼峰命名是最常用的一种命名方法,通常被用在,函数,变量,如: 帕斯卡命名法(PascalCase) 帕斯卡命名方法一般常见于Class类、接口、组件等,…

JavaScript基础知识:搞懂深拷贝-浅拷贝-多方法详解

各位同学又见面了,我是SEO禅,今天带来的JavaScript基础知识是深拷贝和浅拷贝,浅拷贝比较简单,但是我们学习嘛,就要由浅入深(听起来有点怪怪的),不能还没学会走路就想跑,在SEO禅做前端的时候,别人喜欢叫前端『切图仔』,现在大前端的概念深入人心,我们前端可以不再是『切图仔』,要是看后端不爽,他的工作我们也顺手做了,但是呢,能这样做,还需要建立在扎实的…

JavaScript基础:clientX/Y、pageX/Y、screenX/Y、offsetX/Y的区别

有做过拖拽项目的前端小伙伴一定有遇到过这几个鼠标事件属性:clientX、clientY、pageX、pageY、screenX、screenY、offsetX、offsetY,WTF!一开始SEO禅看到这么多XY也是一头雾水头大的很,读了MDN的文档还是不是很清楚,后面看了几篇文章,又找到一些图片,终于再也不会把他们混在一起了,在这里记录分享给大家: cl…

网站服务器安全优化-CORS跨域资源共享

做过前端开发的小伙伴肯定会遇到下面这样报红的error经历: 如果没有遇到,那你就还需要多努力努力了,这个错误就是今天SEO禅要说的CORS(Cross-origin resource sharing)跨域资源共享,这是在前端开发中再常见不过的问题,比如我们本地开发,使用的域名地址是localhost,或者IP如192.x.x.x之类的,如果请求后端API服…

JavaScript基础:什么是原型和原型链?彻底理解JavaScript原型机制

相信学习过前端的同学,一定有一段时间会对原型,原型对象,原型链这些名词熟悉又陌生,其中最难理解的应该就是__proto__和prototype,它们的区别经常会被搞混,SEO禅也一样,有段时间也是傻傻分不清,经过社会的毒打之后,才慢慢开窍,网上有很多文章都在谈,但是并没有看到说的比较明白的,这里SEO禅把自己的理解分享给各位。 什么是对象? 首先我们要先搞清…

Javascript基础:Apply vs Call vs Bind 三者的区别,超级简单一看就会

刚学前端的朋友,如果使用一些框架,在框架里就经常会看到今天这篇文章要介绍的三兄弟:apply,call,bind,SEO禅也经常把他们搞混了,网上的资料很多,但是个人感觉大多数都没说到点上,而且看的比较头晕,其实他们之间的区别很简单,这篇文章不长,但希望对你理解这三个家伙有所帮助。 共同特点 首先介绍下这三个函数的共同特点:绑定上下文(this)的执行环境,…