自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zjuwwj的博客

你值得你拥有的所有~

  • 博客(56)
  • 收藏
  • 关注

原创 Jenkins部署成功后自动发通知到钉钉群

Jenkins部署成功后怎么自动发通知到钉钉群

2024-05-22 11:32:58 405

原创 Mac上如何安装低版本chrome浏览器

为了排查项目上使用chrome低版本的兼容性问题,需要在本机【mac系统】上安装一个低版本的chrome浏览器。

2024-05-22 11:10:19 733

原创 一个前端leader关于前端代码规范的建议,已在团队内部落地

前端代码规范

2024-05-16 14:34:44 555

原创 NodeJS V8引擎内存和垃圾回收器

程序运行过程中会用到一些数据,这些数据被放在堆栈中,在程序运行结束后,这些不再使用的数据,就是垃圾。

2024-05-15 15:39:03 1332

原创 详解NodeJS事件循环

浏览器中的事件循环是由HTML规范来定义,之后由各浏览器厂商实现的,而node中的事件循环的定义与实现均由libuv引擎完成。node使用chrome v8引擎作为js解释器,v8引擎分析代码后,主线程立即执行同步任务,而异步任务则由libuv引擎驱动执行,而且不同异步任务的回调事件会放在不同的队列中等待主线程执行,不再是简单的宏任务队列和微任务队列。

2024-05-15 15:22:30 1298

原创 如何丝滑地切换node版本

由于有些比较老的系统,使用的node版本较低,本机装的node版本又比较高,不想降node版本,那么就需要考虑能不能在系统里管理多个node版本呢?由于我使用的操作系统是Mac,下面将主要讲解如何在Mac上快速切换不同的node版本。

2024-04-10 18:08:49 329

原创 前端小伙伴要知道的DNS

DNS是应用层的协议,全名为Domain Name System(域名解析系统)。当我们输入www.baidu.com的时候,浏览器就要向这个URL的主机名对应的服务器发起请求,就得知道服务器的IP地址,对于浏览器来说,DNS的作用就是将主机名转换成IP地址。DNS是一个分布式数据库,整个DNS系统由分散在世界各地的很多台DNS服务器组成,每台DNS服务器上都保存了一些数据,这些数据可以让我们最终查询到主机名对应的IP。

2024-03-25 09:47:14 243

原创 强缓存和协商缓存

什么是浏览器缓存?怎么区分强缓存和协商缓存?

2024-03-18 10:13:43 1056

原创 jenkins部署vue2项目时报错-内存溢出问题

这是因为在webpack打包过程中占用的内存堆栈超出了node.js中采用的V8引擎对内存的限制导致的。V8引擎对内存的使用的默认大小限制是1.4G,可以通过node.js命令设置限制来解决这个问题。

2023-06-15 15:10:13 815 2

原创 vue3报错-ts识别不了vue文件

vue3报错-找不到模块’.vue’或相应的类型声明,虽然并不会影响启动和打包,但是有这么一个红红的报错也很不爽!

2023-05-31 20:33:13 1147

原创 前端vscode插件bito

GPT-4和ChatGPT越来越火,前端人员是否也能在日常工作中尝试体验其带来的乐趣呢?答案是可以的!安排!!今天介绍一款vscode的插件 【bito】。

2023-05-30 09:08:48 1251

原创 Vue.use(plugin)

● 什么是Vue.use()● Vue.use的简单使用● 为什么在引入Vue-Router、ElementUI的时候需要Vue.use(),而引入axios的时候,不需要Vue.use()● Vue-Router、ElementUI在Vue.use()分别做了什么● Vue.use原理● 如何编写一个Vue插件?

2023-05-26 09:51:34 734

原创 Vue安全

不论使用模板还是渲染函数,内容都会被自动转义。也就是说对于这份模板:

2023-05-23 16:48:32 808

原创 CSS选择器世界

张鑫旭在《CSS选择器世界》

2023-05-11 08:23:54 528

原创 从零构建自己的脚手架

在线文档。

2023-05-10 20:19:20 1067

原创 vscode配置代码片段,自动生成vue(基于ts)的模板

打开vue.json配置vue模板内容使用新建一个.vue文件输入vue回车后,自动生成代码附赠:vue.json里的代码{ "Print to console": { "prefix": "vue", "body": [ "<template>", "", "</template>", "", "<script lang=\"ts\">", "import { Component, V

2021-01-21 19:41:41 1856

原创 从js单线程到浏览器多线程与多进程,再到JS的事件循环

为什么js是单线程js最大的特点就是单线程,即同一个时间只能做一件事。那么为啥js不能多线程呢?多线程后效率不是更高吗?普遍性在 GUI 编程里,单一线程控制 GUI,是一个非常普遍的做法。js 最初就是用在网页上的,早期设计了 js 只能单线程运行,沿袭普遍做法,也就显得非常顺理成章了。用途作为浏览器脚本语言,js的主要用途就是与用户互动、操作DOM,如果js同时有2个线程在跑,A线程在某个DOM上添加节点,B线程删除了这个DOM节点,这时浏览器应该以哪个线程为准?这就乱套了。为了简单起见,js

2020-10-09 11:30:42 229

原创 你真的知道npm执行脚本的顺序吗

来自灵魂的拷问npm 可以执行多个脚本,但是你真的知道它的执行顺序吗???直接上干货吧”&“ ,指的是并发执行,不存在依赖关系”&&“,指的是继发执行,先执行完前面的再执行后面的,有依赖关系// 并行"update": "bs subBuild & bs patch & npm publish"// 继发"update": "bs subBuild && bs patch && npm publish"两者是

2020-09-15 17:03:16 641

原创 vue混入mixin浅析

mixin基础混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。一个混入对象可以包含任意组件选项。当组件使用混入对象时,所有混入对象的选项将被“混合”进入该组件本身的选项。局部混入// 定义一个混入对象var myMixin = { created: function () { this.hello() }, methods: { hello: function () { console.log('hello from mi

2020-09-02 18:00:41 397

原创 windows下安装nvm成功,但是node -v报错

需求描述windows下的需要支持不同的node环境,需要安装不同的node版本安装nvm下载地址:nvm官网下载地址安装:双击nvm-setup.exe进行安装注意:如果在安装nvm之前,电脑上就已经安装有node的,会询问你是否用nvm管理已经存在的node版本,选‘是’,这个弹窗可能会出现好几次,都点是就可以了。验证是否安装成功nvm -v安装指定版本的node,比如我要安装10.15.1版本的nodenvm install 10.15.1查看已经安装的node

2020-09-01 16:37:39 3601 2

原创 vscode中.vue文件的template添加注释出错问题解决(已安装vetur)

1. 现象已经安装了vetur,但是给.vue文件的template添加注释还是有问题,网上查的说是插件冲突,卸载后重新安装依然无效;还有的是在settings.js里配置一堆东西,尝试了也是无效。2. 解决方法尝试了这个办法后,终于生效了,在vscde的settings.json里添加如下代码:"files.associations": { "*.vue": "html"}喜大普奔,生效了!3. 其他功夫不负有心人,开心最重要。...

2020-08-24 10:30:26 6847 3

原创 数组去重&对象数组根据某个属性去重

function uniqueFunc(...args) { const paramsLength = arguments.length; if(paramsLength == 1) { return [...new Set(arr)]; } else { const res = new Map(); const flag = arguments[1]; return arg...

2019-08-05 18:04:43 2505

原创 布局神器-Flex附例子

网页布局(layout)可以说是 CSS 中的一个重点应用,

2019-07-30 16:44:24 197

原创 由scrollLeft想起的周边

scrollLeft、scrollTopscrollLeft : 设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离- scrollLeft 可以是任意整数- 如果元素不能滚动(比如:元素没有溢出),那么scrollLeft 的值是0- 如果给scrollLeft 设置的值小于0,那么scrollLeft 的值将变为0。 如果给scrollLeft- 设置的值大于元素内容最...

2019-07-30 11:35:48 132

原创 iview表头中添加图标悬浮提示错位问题

问题描述iview表格里,renderHeader中写的tooltip错位关键参数 ( transfer : true )iview的Tooltip组件里,有一个属性transfer,表示:是否将弹层放置于 body 内,在 Tabs、带有 fixed 的 Table 列内使用时,建议添加此属性,它将不受父级样式影响,从而达到更好的效果,renderHeader中写的tooltip错位问题解...

2019-03-07 11:29:15 3894

原创 ng2-file-upload动态设置url和额外参数

调用setOptions()方法,可以动态设置参数let global = this;let url = 'your request url'; this.uploader.setOptions({url: url, additionalParameter: param});//动态添加url和设置额外参数this.uploader.queue[0].upload(); // 开始上传t...

2019-03-04 21:18:44 1566

原创 升级node版本后VUE项目启动报错

查看node版本:node -v原来的node版本是8.11.3升级后的node版本是10.13.0启动VUE项目 npm run dev报错:fs.js:129throw new ERR_INVALID_CALLBACK();^TypeError [ERR_INVALID_CALLBACK]: Callback must be a functionat maybeCa...

2018-10-31 15:27:33 6531

原创 windows下使用Vue CLI 3初始化VUE项目报错

初始化项目D:\demo&amp;gt;vue create hello-world报错: You are using Node v8.6.0, but this version of vue-cli requires Node &amp;gt;=8.9.Please upgrade your Node version.更新nodewhere node //查看当前的node安装目录去node中文...

2018-10-30 20:36:20 1223

原创 常用的纯CSS实现的等高布局

1. margin + padding由于背景是在padding区域显示的,设置一个大数值的padding-bottom,再设置相同数值的负的margin-bottom,使背景色铺满元素区域,实现视觉上的等高效果。缺点在于,如果页面中使用锚点跳转时,将会隐藏部分文字信息;如果页面中的背景图片定位到底部,将会看不到背景图片。&amp;lt;!DOCTYPE html&amp;gt;&amp;lt;html lang...

2018-10-24 23:20:17 185

原创 前后端联调-Nginx转发请求

这里写自luyou定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢...

2018-10-17 14:23:40 3272

原创 较为详细的一次this总结

1. 内联式绑定Dom元素的事件处理函数<script type="text/javascript"> function sayHi(){ alert("当前点击的元素是" + this.tagName); } script><input id="btnTest" type="button" value="点击我" onclick="sayHi()">打印出来

2017-12-27 19:40:23 298

原创 表头固定,随内容可水平拖动的超简单实现

1. 设计思路两个table实现,有三个div,最外侧一个,控制全局,一个控制表头,一个控制表身。 2. 注意事项最外侧的div,需要用overflow-x来控制最横向滚动,因为overflow-x、y在IE中存在兼容性问题,当overflow-x/overflow-y其中之一被设置成’scroll’、’auto’、’hidden’时,另一个还是’visible’,不会被设置为

2017-12-27 19:15:24 4259

原创 阻止Bootstrap 模态框点击背景空白处自动关闭

问题描述模态框点击空白处,会自动关闭,怎么阻止关闭事件呢?解决方法在HTML页面中编写模态框时,在div初始化时添加属性 aria-hidden=”true” data-backdrop=”static”,即可。<!-- 模态框(Modal) --><div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-hidd

2017-12-27 19:11:13 4138

原创 CSS3扫盲篇

CSS31. 一些最重要CSS3模块如下:选择器盒模型背景和边框文字特效2D/3D转换动画多列布局用户界面2. 边框border-radiusbox-shadowborder-image(Internet Explorer 10 及更早的版本不支持 border-image 属性。)3. 圆角四个值: 第一个值为左上角,第二个值为右上角,第三个值为右下角,第四个值为左下角

2017-08-19 15:05:37 430

原创 JS 闭包的那些事儿

1. 什么是闭包简而言之:内部函数被外部函数之外的其他变量引用时,就形成了闭包。2. GC 回收机制在js里,如果一个对象不再被引用时,就会被GC回收,否则就一直保存在内存中。3. 闭包有什么用当我们需要在模块中定义一些变量,并希望这些变量一直保存在内存中但又不会“污染”全局的变量时,就可以用闭包来定义这个模块。4. 最简单的闭包function A() { var count = 0;

2017-07-29 17:20:31 294

原创 mac 上安装 nvm 遇到的坑

nvm 是 Mac 下的 node 管理工具,有点类似管理 Ruby 的 rvm,如果是需要管理 Windows 下的 node,官方推荐是使用 nvmw 或 nvm-windows 。1. 安装之前做如下准备卸载已安装到全局的 node/npm如果之前是在官网下载的 node 安装包,运行后会自动安装在全局目录,其中node 命令在 /usr/local/bin/node ,n

2017-05-30 07:59:39 24116 2

原创 mac上安装Nginx详细教程

1. 安装(可以用 brew 安装)sudo brew install nginx2. 查看 nginx 版本nginx -v3. 启动 nginxsudo nginx 也可以使用下面的命令启动,但是配置文件nginx.conf修改后用这个命令执行不生效,故不建议使用:sudo brew services start nginx4. 查看 nginx 是否启动成功在浏览器中访问 http://lo

2017-05-26 21:46:56 33143

原创 ECharts散点图地图加载不出来的问题

1. 需要的效果图 遇到的问题:Echarts3.0 散点图只显示南沙群岛,如下图所示。2. 解决方法2.1 去官网下载需要的ECharts版本 http://echarts.baidu.com/download.html 注意:刚开始我用的是“常用“版本,虽然官网说包含散点图,但是我需要的图还是无法加载,换成完整版的问题解决。 2.2 散点图涉及到地图,需要下载地图数据 http:

2017-05-24 09:58:22 8018

原创 前端开发工程师-阿里内推一面

1. 自我介绍2. 项目介绍3. CSS1.介绍一下css盒模型盒模型基本成了面试必问的问题,有W3C的盒模型和IE浏览器下的盒模型,盒模型从外到里包括:margin、border、padding、content。 W3C盒模型的宽度 = content的宽度 IE盒模型的宽度 = border+padding+content的宽度2.css的选择符

2017-04-16 16:08:19 3552

原创 检测 JavaScript 的数据类型

1. typeof检测基本数据类型时,typeof 操作符用起来非常得心应手;但如果是复杂数据类型,typeof 操作符就显得有些无能为力了。 操作数类型 结果 undefined undefined 布尔值 boolean 字符串 string 数值 number 对象或者null object 函数 function 代码测试:var t

2017-03-08 19:53:37 461

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除