Bruski
码龄7年
关注
提问 私信
  • 博客:34,029
    问答:200
    34,229
    总访问量
  • 24
    原创
  • 1,842,934
    排名
  • 13
    粉丝
  • 0
    铁粉

个人简介:一名喜欢设计的Web前端开发:)

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:美国
  • 加入CSDN时间: 2018-03-27
博客简介:

Bruski的博客

查看详细资料
个人成就
  • 获得33次点赞
  • 内容获得8次评论
  • 获得107次收藏
  • 代码片获得181次分享
创作历程
  • 6篇
    2021年
  • 13篇
    2020年
  • 3篇
    2019年
  • 11篇
    2018年
成就勋章
TA的专栏
  • jetbrains
  • Linux
    3篇
  • Coding
    3篇
  • 拉勾大前端训练营
    4篇
  • 前端面试
    3篇
  • 算法
    1篇
  • 暑期学习日记
    1篇
  • JavaWeb学习
  • 填坑记录
    2篇
  • Linux学习
    3篇
  • 前端进修之路
    14篇
  • 实习日记
  • Unity学习
    1篇
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

[macOS]npm mozjpeg 模块下载/prebuild test失败处理方式

参考文章:https://ijs.me/2019/01/14/mozjpeg-pre-build-compile-error-fix/如果是macOS的话,通过brew把mozjpeg相关依赖装好:brew install libtool automake autoconf nasm此时重新安装mozjpeg应该就可以通过了。实在不行把项目依赖删了重装rm -rf node_modulesnpm cache clean --force...
原创
发布博客 2021.07.03 ·
1676 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

mozjpeg pre-build test failed.系统是MacOS 11.2.3,m1的

答:

如果是macOS的话,通过brew把mozjpeg相关依赖装好:

brew install libtool automake autoconf nasm

此时重新安装 mozjpeg 应该就可以通过了。

实在不行把项目依赖删了重装

rm -rf node_modules
npm cache clean --force
npm install
回答问题 2021.07.03

记一次Ubuntu完美迁移系统盘的折腾

平淡的下午写着代码,突然系统弹窗:"/目录空间不足!!!",一点 "检查"一看,原来还是自己刚学linux那会儿分配的20G可怜空间,而如今已经不想打开windows了,感叹到,该给linux涨涨地位了. 于是买来一张250GB nvme SSD, 又不想重装系统, 想把系统盘一字节不落的 完美迁移 ,于是乎开始了迁移的折腾之旅~~~环境说明本人的环境信息如下:原250GB nvme SSD 装了双系统: 200G给到win10, 20G给到Ubuntu208Gx2 = 16G内存Ubunt.
原创
发布博客 2021.04.18 ·
8779 阅读 ·
16 点赞 ·
0 评论 ·
55 收藏

Vue|VSCode|ESLint+autofix最简配置

定个小目标⛳️:实现用VS Code编辑默认vue cli创建的vue2项目,对.vue, .js等文件有错误检查与代码风格检查(lint)、保存时自动修复(autofix)、按照Prettier风格进行格式化。上网搜索vscode的vue项目lint和格式化,大多文章介绍的是其团队自己一揽子规范,很多规则不通用,还有很多过时、无效的配置也一并贴出来(当前为2021年),看得我头都大了????我只想要一个vue、eslint、prettier三者结合的官方默认配置,怎么这么麻烦??于是我决定痛下决心
原创
发布博客 2021.04.03 ·
3273 阅读 ·
3 点赞 ·
1 评论 ·
2 收藏

谈谈CSS的渐进增强

Author:Bruski ????????‍????(bruskiwang@outlook.com)CSS层叠样式表作为前端三剑客之一,通过各类选择器来解耦HTML结构与表现,让开发者拥有专注控制样式的能力,实现了关注点分离。通过层叠机制,为规则赋予不同的重要程度,让我们的样式代码能够灵活地继承与覆盖。它就像精灵宝可梦里的百变怪????,拥有强大而奇妙的变化与适应能力,前端技术也因CSS的加入而变得漂亮与有趣????本文主要分享CSS技术中的一个切面概念:渐进增强,希望能够从原理+实例出发,给
原创
发布博客 2021.03.19 ·
711 阅读 ·
1 点赞 ·
1 评论 ·
2 收藏

Hey,你造什么是TDD吗?

本篇文章阅读时间:10min读者预期的收获是:认识测试驱动开发非常简单开启你的TDD之旅可以编写自动化测试可以学会如何开始重构、重新设计旧的代码引子(压抑背景音乐渐入——)旁白:为何深夜的办公室传来程序员的哀嚎?为何说好的一刀999,砍下去伤害为0?为何程序员好基友反目成仇,因代码调用出问题后甩锅大打出手?当个程序员,好难!(捂着铮亮的脑门)程序员甲:自从用了TDD,测试驱动开发之后,每天下班早了,BUG变少了,基友不吵了。程序员乙丙丁:真的吗?有这么神奇吗?!(集体星星眼.
原创
发布博客 2021.02.26 ·
517 阅读 ·
0 点赞 ·
4 评论 ·
0 收藏

[Linux]生成ssh key密钥

使用ssh-keygen命令ssh-keygen -t rsa -C "youremail@example.com"生成的密钥会报存在/root/.ssh/id_rsa路径下。
原创
发布博客 2021.01.31 ·
376 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

React原理学习

React原理学习vdom和diffh函数vnode数据结构patch函数diff算法只比较同一层级,不跨级比较tag不相同,则直接删掉重建,不再深度比较tag和key两者都相同,认为是相同节点,不再深度比较JSX本质查看react编译结果:Babel编译后为createElement函数(h函数 ),返回vnode。// 参数一:标签名 / 组件变量// 参数二:attributes// 参数三及往后:children / textReact.createElem
原创
发布博客 2020.10.16 ·
321 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

VIM学习

VIM github 教程: https://github.com/bruceeewong/vim-galore-zh_cn入门参考文章: https://zhuanlan.zhihu.com/p/89042423对VIM总是一知半解,进入奇怪的模式就不会退出了,然后很低效,专门抽时间来学习下这个别人手中强大的编辑器!思维导图...
原创
发布博客 2020.09.28 ·
112 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Vue 2 源码阅读笔记

Vue 2 源码阅读笔记作者:bruski更新时间:2020/09/20本周末跟着拉勾前端训练营课程,学习Vue2.6的源码,终于对我们工作常用的框架有了深入的探索。Vue的设计确实轻巧精妙,代码结构、表意都十分清晰,不仅对Vue框架有窥视,还学习了漂亮的代码是怎么编排的,收获颇丰。但第一遍看下来,还是有许多不解困惑的地方,尤其是 数据响应式部分,Observer / Dep / Watcher 的调用有点绕,还需反复咀嚼!今天就先把各个部分的思维导图笔记记录一下。思维导图笔记前置Vu
原创
发布博客 2020.09.20 ·
239 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2020/08/20 -腾讯Web前端开发面试题回答

2020/08/20 - 面试题回答面试岗位: QQ音乐 - Web前端开发笔试题1 - eval是做什么的?参考回答:https://zhuanlan.zhihu.com/p/23768637思路:先回答它是干什么的、有什么用,再回答他对作用域的影响,然后讨论执行效率的问题,最后讨论eval的其他作用。eval的作用:把字符串参数解析成JS代码并运行,并返回执行的结果,如eval("2+3"); //执行加运算,并返回运算值eval("var age=10"); //声明一个age变
原创
发布博客 2020.08.24 ·
891 阅读 ·
4 点赞 ·
0 评论 ·
14 收藏

理解、消化前端缓存知识

特别好的讲解文章: 来自知乎:《一文读懂前端缓存》 - 小蘑菇小哥对于缓存总是一知半解,实践有遇到缓存奇怪现象,比如更新了代码,然后用户端由于版本失配导致报错。面试中面试官也对强缓存的概念和解决方案深究,搞得我好难堪。于是痛定思痛,好好学习一版缓存的知识,文章就来源于知乎的一篇深度好文,以下只展示我做的思维导图笔记。缓存概览按缓存位置分类Memory Cache 内存缓存Disk Cache 硬盘缓存Service Worker![Service Worker请求网络的过程按失效.
原创
发布博客 2020.08.23 ·
170 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

2020/08/20 - [腾讯]Web前端面试

面试岗位: Web前端开发面试题1 - eval是做什么的?2 - 如何判断一个对象是否属于某个类?3 - 同步和异步的区别?4 - 外链JS异步加载(不阻塞)的方式有哪些,分别有什么区别和应用方案?5 - 如何判断当前脚本是运行在浏览器还是Node环境?6 - 请指出 window.load 和 document.DOMContentLoaded 两个事件的区别,哪个事件先发生?7 - JavaScript 有几种数据类型,哪些是传值,哪些是传址?8 - 移动端都包含哪几个原生触屏事.
原创
发布博客 2020.08.22 ·
260 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

[转载+消化]十大经典算法

推荐一个讲解清晰的网站: https://sort.hust.cc/冒泡排序算法步骤比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。function bubbleSort(arr) { var len = arr.length; for (var i = 0; i .
转载
发布博客 2020.08.21 ·
216 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

大数相加

参考:知乎-JS 实现两个大数相加?-pany回答背景:大数相加,由于js精度 最大只能到 9007199254740991 (16位) 一旦数字超过这个范围便会损失精度为了能让超精度的数字相加,所以要用字符串表示数据let a = "9007199254740991";let b = "1234567899999999999";function add(a, b) { //取两个数字的最大长度 let maxLength = Math.max(a.length, b.length).
转载
发布博客 2020.08.21 ·
223 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

函数防抖&函数节流

参考:https://juejin.im/post/6844904120432721933函数防抖在事件被触发 n 秒后再执行回调,如果在这 n 秒内事件又被触发,则重新计时。/** 将普通函数包裹一层 */function debounce(fn, wait) { var timer = null return function() { var context = this var args = arguments if (timer) { cle.
转载
发布博客 2020.08.21 ·
177 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

浅拷贝与深拷贝及实现

浅拷贝与深拷贝参考: 掘金文章JS类型及存储深拷贝和浅拷贝的主要区别就是其在内存中的存储类型不同:JS的五大基础类型 (undefined,boolean,number,string,null)都是存储在栈内存中,按值存放不可修改,所以拷贝的时候是直接复制值JS的引用类型 (object, array, function...),其真实值存储在堆内存中,变量存储的实际是指向堆内存地址的指针,存储在栈内存,所以比较、赋值的时候是复制指针,修改会影响到堆中的数据。浅拷贝浅拷贝即遍历原对象的第一
原创
发布博客 2020.08.20 ·
627 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

JavaScript异步编程小记

作者: Bruski时间: 2020/08/20文章主要介绍 JS运行的两种方式、Generator的用法、以及Async-Await与生成器的关系JavaScript两种运行方式同步模式,优点:易读,简单,缺点:遇到耗时操作会导致阻塞,卡死,此时就需要将耗时任务用异步的方式执行console.log("global begin"); // 调用1function bar() { console.log("bar task");}function foo() { consol.
原创
发布博客 2020.08.20 ·
188 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

TypeScript类型基础

作者:Bruski时间: 2020/08/20原始数据类型const a: string = "foobar";const b: boolean = false;const c: number = 1;// 不允许置null// const d: boolean = null;const e: void = undefined;const f: null = null;const g: undefined = undefined;// 在 lib.es2015.sym.
原创
发布博客 2020.08.20 ·
210 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[拉勾前端训练营] ECMAScript各版本特性 - 学习笔记

作者: 王思哲 bruski时间: 2020/05/23ECMAScript概述ECMAScript 是语言标准,只负责定义语法与 JavaScipt 的关系JavaScript 是 ECMAScript 的实现与扩展JavaScript 的本身,是 ECMAScript在不同环境下, JS 的组成分别是:浏览器ECMAScriptWeb APIsDOMBOMNodeJSECMAScriptNode APIsfsnetetc.发展历程.
原创
发布博客 2020.08.20 ·
494 阅读 ·
1 点赞 ·
1 评论 ·
3 收藏
加载更多