从一道面试题来了解浏览器渲染过程

2019-10-10
阅读 4 分钟
5.2k
理解浏览器是如何工作的,对我们做业务的技术选型、架构设计等都有非常重要的作用,可以让我们准确的评估web开的项目的可行性,站在更高维度审视页面,以及在快节奏的技术迭代中把握住问题的本质。

Flutter Text文本组件详解

2019-10-09
阅读 10 分钟
8.5k
示例 API Text,很常用的一个Widget;用于显示简单样式文本,它包含一些控制文本显示样式的一些属性 text构造方法源码: {代码...} 参数详解: data 要显示的字符串 style样式TextStyle TextStyle的构造函数: {代码...} 属性 说明 inherit 是否将null值替换为祖先文本样式中的值(例如,在TextSpan树中)。如果为false...

如何写出优雅耐看的JavaScript代码

2019-09-20
阅读 9 分钟
10.4k
前言 在我们平时的工作开发中,大多数都是大人协同开发的公共项目;在我们平时开发中代码codeing的时候我们考虑代码的可读性、复用性和扩展性。 干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。 我们从以下几个方面进行探讨: 变量 1、变量命名 一般我们在定义变量是要使用有意义的词汇命令,要做...

Flutter设置背景图片

2019-09-19
阅读 8 分钟
9.3k
效果展示 前言 在我们平时的开发中会经常使用到背景图片,下面我这介绍的是Container通过BoxDecoration来设置的 布局 1、创建路由子页面 {代码...} Scaffold 路由页面的骨架,我们在里面可以拼装出一个完整的路由页面 appBar 创建导航栏 body 构建页面主体结构 2、页面布局 {代码...} 为了后续方便维护,在页面布局时最...

vscode中调试flutter非常实用方便

2019-09-18
阅读 2 分钟
18.7k
之前每次启动flutter时首先是要open -a Simulator打开本地的模拟器(我这里是Mac Xcode的iOS模拟器),然后在运行flutter run命令,这是才会把程序运行的模拟器;

通过解决一个flutter的路由错误来深入理解BuildContext

2019-09-17
阅读 7 分钟
4.8k
前言 在使用flutter路由跳转是出现如下错误: 代码: {代码...} 解决方案 把home部分作为一个新的Widget拆出来就可以了。 {代码...} 为什么我的Navigator操作会出现当前的context找不到Navigator的情况,为什么拆成新的widget就好了? 那下面就来具体分析一下 Navigator 我们经常会在应用中打开许多页面,当我们返回的时...

前端经典面试题(60道前端面试题包含JS、CSS、React、网络、浏览器、程序题等)

2019-09-16
阅读 30 分钟
20.7k
(以下所有答案仅供参考) 简答题 1、什么是防抖和节流?有什么区别?如何实现? 参考答案 防抖 触发高频事件后n秒内函数只会执行一次,如果n秒内高频事件再次被触发,则重新计算时间 思路: 每次触发事件时都取消之前的延时调用方法 {代码...} 节流 高频事件触发,但在n秒内只会执行一次,所以节流会稀释函数的执行频率 ...

前端JS内存管理

2019-09-12
阅读 7 分钟
5.9k
像C语言这样的底层语言一般都有底层的内存管理接口,比如 malloc()和free()。相反,JavaScript是在创建变量(对象,字符串等)时自动进行了分配内存,并且在不使用它们时“自动”释放。 释放的过程称为垃圾回收。这个“自动”是混乱的根源,并让JavaScript(和其他高级语言)开发者错误的感觉他们可以不关心内存管理。

配置多个SSH-Key

2019-09-11
阅读 2 分钟
3.8k
有时我们在开发的过程中,需要把代码提交到不同的gitlab仓库里面,比如:公司的gitlab、GitHub等其他git仓库;在代码提交的时候都需要验证本机的SSH Keys;

Vscode前端开发插件大全

2019-09-11
阅读 9 分钟
7.8k
快捷键 通用快捷键 快捷键 作用 Ctrl+Shift+P,F1 展示全局命令面板 Ctrl+P 快速打开最近打开的文件 Ctrl+Shift+N 打开新的编辑器窗口 Ctrl+Shift+W 关闭编辑器 基础编辑 快捷键 作用 Ctrl + X 剪切 Ctrl + C 复制 Alt + up/down 移动行上下 Shift + Alt up/down 在当前行上下复制当前行 Ctrl + Shift + K 删除行 Ctrl + ...

hexo+github搭建个人博客(详细配置讲解)

2019-09-10
阅读 9 分钟
4.5k
前言 GitHub page提供了免费的服务搭建 免费域名 xxx.github.io xxx是你的GitHub用户名 免费的代码存储空间 全是静态文件,快速访问 git版本管理,能快速回滚或者切换的某个版本 准备工作 注册GitHub账号 (如果已拥有GitHub账号 无需重新注册) 点击sign in 页面的Create an account 注册页面信息填写: 注册完成之后直...

ssh报错

2019-09-06
阅读 1 分钟
3.6k
You have a pre-existing .ssh/config or /etc/ssh/ssh_config file, possibly with a GSSAPIKeyExchange no setting that was previously required for El Capitan (Mac OS 10.11)

MongoDB多条件模糊查询

2019-08-30
阅读 2 分钟
8.3k
模糊查询是数据库的基本操作之一,实现对给定的字符串是否与指定的模式进行匹配。如果字符完全匹配,可以用=等号表示,如果部分匹配可认为是一种模糊查询。在关系型数据中,通过SQL使用like ‘%fens%’的语法。那么在mongodb中我们应该如何实现模糊查询的效果呢。

node express使用HTML模板

2019-08-21
阅读 1 分钟
4k
一般我们在做node web项目的时候,想使用我们平时常用的html模板,express默认使用jade模板,本身是没有HTML的,那么如何实现呢?

centos软连接创建

2019-08-21
阅读 1 分钟
2.5k
经常使用centos系统的同学都知道,在全局安装命令指令时,即使是执行了npm install -g 但是安装之后的命令仍然说找不到 那么我们改如何操作呢?

RN window下android环境搭建

2019-08-21
阅读 3 分钟
1.8k
开发软件依赖 Python2 注:目前不支持Python3版本 下载地址Python 2.7.15,下载后直接安装即可。 Node 下载地址Node.js 7.6.0,与React Native构建平台使用node版本一致 安装完 node 后建议设置 npm 镜像以加速安装第三方依赖。 npm config set registry [链接] --globalnpm config set disturl [链接] --global Yarn、R...

前端Virtual DOM详解

2019-08-21
阅读 9 分钟
2.6k
目前最流行的两大前端框架,React和Vue,都不约而同的借助Virtual DOM技术提高页面的渲染效率。那么,什么是Virtual DOM?它是通过什么方式去提升页面渲染效率的呢?

VuePress从零开始

2019-08-16
阅读 6 分钟
10.2k
VuePress 由两部分组成:一个以 Vue 驱动的主题系统的简约静态网站生成工具,和一个为编写技术文档而优化的默认主题。它是为了支持 Vue 子项目的文档需求而创建的。

TypeScript tsconfig.json

2019-08-15
阅读 3 分钟
2.7k
如果一个目录下存在一个tsconfig.json文件,那么它意味着这个目录是TypeScript项目的根目录。tsconfig.json文件中指定了用来编译这个项目的根文件和编译选项。

前端RN路由入门到实战

2019-08-15
阅读 14 分钟
8.8k
开始今天的话题之前,让我们先来了解一下前端路由,Ajax诞生以后,解决了每次用户操作都要向服务器端发起请求重刷整个页面的问题,但随之而来的问题是无法保存Ajax操作状态,浏览器的前进后退功能也不可用,当下流行的两种解决方法是:

前端十大经典算法

2019-08-14
阅读 11 分钟
35.1k
非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。

Hybrid设计与实现

2019-08-14
阅读 7 分钟
5.9k
随着移动浪潮的兴起,各种APP层出不穷,极速的业务扩展提升了团队对开发效率的要求,这个时候使用IOS&Andriod开发一个APP似乎成本有点过高了,而H5的低成本、高效率、跨平台等特性马上被利用起来形成了一种新的开发模式:Hybrid APP。作为一种混合开发的模式,Hybrid APP底层依赖于Native提供的容器(UIWebview),...

Hybrid通信

2019-08-14
阅读 17 分钟
3.6k
相信很多人都在项目里熟练使用各种Hybrid技术,无论是使用了知名得 WebViewJavascriptBridge 框架来做自己的Hybrid Web容器,又或是自己从头着手写了一个满足自己业务需求的bridge,从而构建起自己的Hybrid Web容器,也有的干脆直接使用了cordova 这一大型Hybrid容器框架,cordova + ionic 来进行Hybrid的开发。

TypeScript Fetch封装

2019-08-14
阅读 4 分钟
9.4k
Fetch封装 {代码...} 使用 {代码...}

TypeScript泛型接口(三)

2019-08-13
阅读 1 分钟
1.5k
以使用接口的方式来定义一个函数需要符合的形状: {代码...} 当然也可以使用含有泛型的接口来定义函数的形状: {代码...} 进一步,我们可以把泛型参数提前到接口名上: {代码...} 注意,此时在使用泛型接口的时候,需要定义泛型的类型。

TypeScript泛型约束(二)

2019-08-12
阅读 2 分钟
9.1k
有了泛型之后,一个函数或容器类能处理的类型一下子扩到了无限大,似乎有点失控的感觉。所以这里又产生了一个约束的概念。我们可以声明对类型参数进行约束。

TypeScript泛型详解(一)

2019-08-12
阅读 6 分钟
5k
泛型 泛型(Generics)是指在定义函数、接口或类的时候,不预先指定具体的类型,而在使用的时候再指定类型的一种特性。 示例 我们先实现一个student方法获取不同属性来看看使用: JavaScript实现 {代码...} TypeScript实现 {代码...} 如果我们还是和以上方式一样去定义公共处理方式和调用就会出现以下问题: {代码...} ...

git常用命令

2019-08-09
阅读 2 分钟
30k
一、git常用指令 1、git显示全部分支 git branch //显示本地分支 git branch -a //显示远程分支 2、git创建分支 git branch 分支名 3、切换分支 git checkout 分支名git checkout -b 分支名 若分支不存在,则创建它 4、删除分支 git branch -d 分支名-d 当分支已经合并到主干后删除-D无论如何都删除分支 5、合并分支 git...

Linux基本命令

2019-08-09
阅读 4 分钟
1.8k
1、判断文件夹是否存在 {代码...} 注意:if条件判断结束一定要加”;“ 方括号[]两边一定要有空格 参数说明: -e filename 如果filename存在,则为true -d filename 如果filename为目录,则为true -f filename 如果filename为常规文件,则为真 -L filename 如果 filename为符号链接,则为真 -r filename 如果 filename可读...

nvm版本管理

2019-08-09
阅读 1 分钟
5k
安装nvm首先要安装或者更新nvm,可以使用cURL 使用安装脚本 {代码...} 或者 wget {代码...} 环境变量 {代码...} 下载并安装完成后用户退出重新登录或者重新 source 一下环境变量 {代码...} 验证安装要验证是否已经安装nvm,执行如下命令: {代码...} 如果安装成功,应该输出'nvm'。请注意,这which nvm将无法使用,因为...