部门变动,技术栈vue转react。学习官网笔记
CSS的BEM规范
css是用来服务于html,给html增加样式。一般情况下我们使用外部样式表,在html中定义类名,使用选择器进行样式绑定。
css样式是没有作用域而言的,最终生效的样式效果取决于权重。
为了样式的健壮性,防止样式冲突。
一般而言我们使用scss
或者less
等预处理器,嵌套书写样式表。
这种形式,不便于项目的维护。当需求进行变更时,css的查找修改需查看一层层的嵌套结构。
理想状态下,我们开发一套组件可以中,我们可以随意为其中的元素命名,没有复杂的嵌套,不用担心是否与组件以外的元素发生冲突
bem解决这一问题的思路是:按照组件名是唯一性的思路,在对元素进行命名是包含组件名来保证组件内部的样式不会和外部冲突。
约定形式如下:block__element--modifier
hexo使用
hexo基本使用,next(7.8.0)主题配置。各种使用技巧,常用问题
Object.defineProperty
js中挺重要的一个api,vue2的数据劫持也是基于此。
typescript关键字
axios源码解读
axios 是前端使用的主流网络请求库。本文从源码角度进行解读,主要分析浏览器环境下具体实现。
node环境下原理相同,区别仅是 axios
对 XMLHttpRequests 与 http 的封装不同。
主要是对axios功能点从源码角度的解读,基于v0.21.0
版本
web自动化一键部署
软件开发中,常见的一种流程是 开发->部署->测试->交付
。其中,前三个环节会重复多次。
对于研发人员来说,频繁的低效,非自动部署很浪费时间。本文提供一种简易脚本来进行自动化一键部署。
ci会有多种解决方案,本文方案总结来说就是
- 本地打包 - vue-cli-service build
- 上传本地文件到服务器 - 使用expect工具编写自动交互脚本
最后会简单介绍一下 expect
工具的使用。
web性能优化-gzip
发表于
分类于
web
web性能优化-http缓存
发表于
分类于
web
web缓存策略学习,验证(nginx)。
什么是强制缓存和策略缓存?
强制缓存的条件是什么?
策略缓存下,客户端和服务端请求涉及哪些header?
vim备忘
vim 备忘