RainBow
RainBow
## 常见问题 0. 建议 v-for 循环不要使用 index 作为 key(老生常谈) 1. 建议加一个计算属性,模板里不要写复杂逻辑 2. 建议 v-if 跟 v-else-if、v-else 配合使用 3. 建议使用 `v-bind=item` https://cn.vuejs.org/v2/api/#v-bind 4. 建议使用 ref 代替 id,ref 是引用的方式,比查找效率更高,其他组件可能出现 id 重名的情况 5....
> 虽然一个人走的更快,但是一群人可以走得更远,前提是统一的步调和策略! ## 一、git 简介 - Workspace:工作区 - Index / Stage:暂存区 - Repository:仓库区(或本地仓库) - Remote:远程仓库 ## 二、分支管理 ### 2.1 分支类型 TKFlow 使用以下两类共 4 种分支类型: **固定分支:** - master 分支:主分支(生产分支),代表当前项目的基线,保护分支,不允许直接修 改,只接受合并请求。保证 master...
## 前言 手写 Promise 是面试的时候大家都逃避的送命题,在学些了解后发现通过实现源码更能将新一代的异步方案理解的通透,知其然知其所以然的运用。 如果直接将源码贴到此处势必不能有更大的收获,下面就按实现版本来看做简要分析。 ## 回顾 Promise Promise 是 CommonJS 提出来的这一种规范,有多个版本,在 ES6 当中已经纳入规范,原生支持 Promise 对象,非 ES6 环境可以用类似 Bluebird、Q 这类库来支持。 Promise 可以将回调变成链式调用写法,流程更加清晰,代码更加优雅,还可以批量处理异步任务。 简单归纳下 Promise:三个状态、两个过程、一个方法,快速记忆方法:3-2-1 三个状态:pending、fulfilled、rejected 两个过程: - pending →...
## 前言 当学习深入了解后,发现一些晦涩难懂的技巧与设计模式有关,记录学习日志。 ## 工厂模式 工厂起到的作用就是隐藏了创建实例的复杂度,只需要提供一个函数,把对象放到函数里,用函数封装创建对象的细节。 ```js var Factory = function (type, text) { // 判断 this 是否是 Factory的实例,代码执行两次 if (this instanceof Factory) { this[type](text); } else { return new...
## 概念入门 在项目开发中常会遇到这种情况:某个工作中的项目需要包含并使用另一个项目,或是我们独立开发的子项目需要同时用于多个父项目的库。在这种情况下既想两个项目独立分治,又想在一个项目中使用另一个。 在这种情况下,Git 子模块就派上用场了,子模块是项目级引用而有同时分治开发的相当简单有效的方法。子模块允许我们将一个 Git 仓库作为另一个 Git 仓库的子目录。它能让你将另一个仓库克隆到自己的项目中,同时还保持提交的独立。 **子模块 vs npm package** - 开发场景,子模块可以区分环境,如使用分支管理 - 发布场景,子模块提交代码,保留子项目的 `commit id`,npm 需要提交 `publish`,然后主项目更新 `npm install`安装就会下载到最新版本的包(不锁定版本) ## 使用子模块 **给当前项目添加子模块** ```bash # 为当前项目添加子模块,可以将远程仓库中额内容克隆下来 git...
## 前言 移动端 rem 适配方案回顾总结 ## 如何使用 rem `rem` 单位的计算参考 html 的根节点 `font-size`进行计算,根节点的字体变化,布局参考的 rem 页面也会相应进行缩放,此为 rem 布局的本质。 ### 1. 动态改变 html 的 font-size 值 几乎在每个浏览器中我们都将 `html` 的 `font-size` 初始化 为...
## 每轮都考察什么? | 轮次 | 考察 | 说明 | | ---- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | | 一面 | 1.前端基础知识。注意要有层次性,不断深⼊追问,挖掘深度。同时考察表达能与理解能⼒;2.候选⼈擅⻓且⾃⼰也擅⻓的技术点。切记不要考察⾃⼰擅⻓但候选⼈不擅⻓的知识点。⽆法提取有效信息,宁可不考也不要浪费时间; | 尽量套路化,规范化,提供标准且有效的信息输出 | | 二面 | 1.前端基础知识。更偏框架、底层、应⽤、⼯程化等实战类;2.候选⼈擅⻓的技术点深度挖掘,注意考察表达能⼒与理解能⼒;3.与业务契合的技能深挖(若有、重点);项⽬的相关经验,针对简历内容展开 | ⼀是作为⼀⾯的考察补充,⼆是要根据候选⼈的情况,给与更针对性的考察。这就要求⾯试官的⽔平要有⼀定的深度和⼴度,能够应付多种类型的候选⼈ |...
## 前言 > GitHub Pages 在线访问最新:[我的前端态度 —— 前端知识体系](https://yanyue404.github.io/fe-attitude/)。 ## 什么是 mvvm MVVM 最早由微软提出来,它借鉴了桌面应用程序的 MVC 思想,在前端页面中,把 Model 用纯 JavaScript 对象表示,View 负责显示,两者做到了最大限度的分离 把 Model 和 View 关联起来的就是 ViewModel。 ViewModel 负责把 Model 的数据同步到...
## 大纲 - 从浏览器接收 url 到开启网络请求线程 - 多进程的浏览器 - 多线程的浏览器内核 - 网络请求都是单独的线程 - 开启网络线程到发出一个完整的 http 请求 - DNS 查询得到 IP - tcp/ip 请求 - 五层因特网协议栈 - 从服务器接收到请求到对应后台接收到请求 - 负载均衡 -...
## 常见 warning **1. 组件注册不正确** > [Vue-warn]:Unknown custom element: - did you register the component correctiy?` **2. 子组件试图直接更改父组件** > [Vue warn]: Avoid mutating a prop directly since the value will...