自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

前端精髓

前端与移动开发

  • 博客(23)
  • 资源 (1)
  • 论坛 (1)
  • 收藏
  • 关注

原创 Vue和React的区别

运行时性能在 React 应用中,当某个组件的状态发生变化时,它会以该组件为根,重新渲染整个组件子树。如要避免不必要的子组件的重渲染,你需要在所有可能的地方使用 PureComponent,或是手动实现 shouldComponentUpdate 方法。同时你可能会需要使用不可变的数据结构来使得你的组件更容易被优化。在 Vue 应用中,组件的依赖是在渲染过程中自动追踪的,所以系统能精确知晓哪...

2019-12-31 15:05:07 84

原创 算法:二叉树翻转

描述:二叉树的数据结构如下,需要将二叉树各节点左右翻转var node1 = { value: 1, left: { value: 2, left: { value: 4 }, right: { value: 5 } }, right: { value: 3, left: { valu...

2019-12-30 10:46:26 239

原创 算法:求两数之和

问题描述:给定一个数组,数组里面有两个数,他们的和是target,求这两个数在数组中的位置思路:a + b = target已知 target求 a 和 bfunction solution(nums, target) { for (let i = 0; i < nums.length; i++) { let a = nums[i] for (let j =...

2019-12-30 09:58:04 178 1

原创 关于我们

Web前端技术由HTML、CSS、JavaScript三大部分构成,是一个庞大而复杂的技术体系,其复杂程度不低于任何一门后端语言。而我们在学习它的时候往往是先从某一个点切入,然后不断地接触和学习新的知识点,因此对于初学者很难理清楚整个体系的脉络结构。《前端精髓》是一个分享前端知识的平台,内容包括HTML、CSS、JavaScript 等和前端技术相关的一切,如果您想对前端有更多的了解,那就持续关...

2019-12-28 09:50:29 107

原创 在线JSON格式化数据

网址:https://wuxianqiang.github.io/tojson/

2019-12-27 10:43:34 109

原创 理解事件循环

setTimeout(() => { console.log('timeout1'); Promise.resolve().then(data => { console.log('then1') }); Promise.resolve().then(data => { console.log('then1'); Promise.resolv...

2019-12-24 11:17:29 89

原创 学会使用BFC解决margin重叠问题

问题描述:上下两个元素都设置了margin,margin会合并,只保留大的一个<body> <ul> <li> <div>1</div> </li> <li> <div>1</div> </li> <li...

2019-12-23 16:02:49 210

原创 redux-saga的原理

为了运行我们的 Saga,我们需要:创建一个 Saga middleware 和要运行的 Sagasimport { take, put } from '../redux-saga/effects'import * as types from './types'export default function* () { for (let i = 0; i < 3; i++) {...

2019-12-22 11:43:56 306

原创 实现动画的几种方式

制作动态的网页是是前端工程师必备的技能,很好的实现动画能够极大的提高用户体验,增强交互效果,那么动画有多少实现方式,一直对此有选择恐惧症的我就总结一下,以便在开发的时候选择最好的实现方式。CSS transitionsCSS transitions 提供了一种在更改CSS属性时控制动画速度的方法。 其可以让属性变化成为一个持续一段时间的过程,而不是立即生效的。语法:transition: ...

2019-12-21 22:32:14 194

原创 redux-saga的使用

redux-saga 是一个用于管理应用程序副作用(例如异步获取数据,访问浏览器缓存等)的库,它的目标是让副作用管理更容易,执行更高效,测试更简单,在处理故障时更容易。你可能已经用了 redux-thunk 来处理数据的读取。不同于 redux thunk,你不会再遇到回调地狱了,你可以很容易地测试异步流程并保持你的 action 是干净的。Reducers 指定了应用状态的变化如何响应 ac...

2019-12-17 15:23:42 82

原创 redux-thunk的使用和原理

redux-thunk是一个redux中间件,原理如下function createThunkMiddleware(extraArgument) { return ({ dispatch, getState }) => (next) => (action) => { if (typeof action === 'function') { return a...

2019-12-16 19:36:01 930

原创 vscode没有react的代码提示

首先你要安装提示插件然后还没有提示,需要改在线服务设置在typescript中勾选禁用自动类型获取

2019-12-16 16:03:41 8057 11

原创 TypeScript里面的泛型

泛型function createArray<T>(length:number, value: T):T[] { let result = [] for(let i = 0; i < length; i++) { result.push(value) } return result}createArray<string>(4, 'x')...

2019-12-15 10:31:40 307

原创 执行create-react-app报错A template was not provided

在执行 npx create-react-app my-app报错Installing packages. This might take a couple of minutes.Installing react, react-dom, and react-scripts........ nothing out of the ordinary here .....✨ Done in 2...

2019-12-14 20:30:56 4005 1

原创 关于call的使用和原理分析

call() 方法使用一个指定的 this 值和单独给出的一个或多个参数来调用一个函数。注意:该方法的语法和作用与 apply() 方法类似,只有一个区别,就是 call() 方法接受的是一个参数列表,而 apply() 方法接受的是一个包含多个参数的数组。var obj = { a: 1, b: function () { console.log(this.a) }}...

2019-12-12 18:12:54 168

原创 冒泡排序

接下来要介绍的基本排序算法其核心思想是指对一组数据按照一定的顺序重新排列。重新排列时用到的技术是一组嵌套的 for 循环。其中外循环会遍历数组的每一项,内循环则用于比较元素。这些算法非常逼真地模拟了人类在现实生活中对数据的排序,例如纸牌玩家在处理手中的牌时对纸牌进行排序,或者教师按照字母顺序或者分数对试卷进行排序。冒泡排序我们先来了解一下冒泡排序算法,它是最慢的排序算法之一,但也是一种最容易实...

2019-12-12 14:25:17 70

原创 用svrx实现mock数据

安装npm install @svrx/cli -g如果你的接口/api/user需要这样的数据{ "code":-6, "msg":"", "message":"", "data":{}}那么我们在route.js可以这样配置// 配置get请求get('/api/user').to.json( { "code":-6, "msg":"", "messa...

2019-12-11 18:30:49 93

原创 Promise的泛型T(Promise<T>)的含义

export interface AxiosInstance { <T = any>(config): Promise<T>}Promise的泛型T代表promise变成成功态之后resolve的值,resolve(value)

2019-12-10 21:44:00 3841

原创 使用QQ的OAuth2.0实现登录

经常在网页里面会提供第三方登录的方式,比如这样。如果点击QQ登录,会出来这样一个页面。那么如果我们的网页也要支持使用QQ登录,我们该怎么做呢?准备工作_OAuth2.0,文档第一步你需要到这个网站,创建应用第一步点击qq登录的按钮,需要跳转到这个网站:https://graph.qq.com/oauth2.0/authorize)并且需要携带以下参数。获取Authoriza...

2019-12-07 12:04:42 114

原创 如何使用pm2部署前端项目

前端部署有很多种方式,场景的有Jenkins,pm2,docker等技术,今天主要介绍使用pm2部署,因为公司一直在使用,也一直想彻底的理解部署的流程。pm2是什么?PM2 是一个守护进程管理器,将帮助您管理和保持应用程序24在线,好强大呀,牛B!!!官方文档地址:连接开始上手使用要从安装开始yarn global add pm2,现在在项目中有这样一个文件夹app.js代码如下//...

2019-12-06 18:35:15 1513

原创 nginx配置之后页面显示403

关闭防火墙systemctl disable firewalld.service停用selinux,通过vi /etc/selinux/config修改配置SELLUNX=disabled关机重启服务器

2019-12-06 18:28:39 1061

原创 统一登录passport介绍

前一段时间,因为在开发中使用到公司的统一登录平台passport,所以就自己找了很多资料,详细的学习了一下它们的原理以及实现过程,这里就着重分享一下“跨域共享cookie和跨域共享session”。场景:公司所有登陆都走的是统一一套pass环境,passport使用的就是cookie和session技术,来作为跟踪保存用户信登陆息的。这里有一个问题,比方说,公司的pass种cookie的时候,...

2019-12-05 22:27:47 2160

原创 冬季前端面试题

1、CSS3的弹性盒子布局中内容对齐属性justify-content里能平均分布一行,而且首尾留有间隙的属性值是:A:centerB:space-aroundC:space-betweenD:flex-end2、有个HTML标签其所在页面定义的样式:<style> a {color: yellow;} #b {color: green;} c {...

2019-12-05 08:24:18 79

移动端横向picker组件

使用vue开发移动端横向滚动的picker组件,不依赖任何框架和库,使用原生JS编写,组件代码约300行,代码难度一般。

2019-01-05

最新版本谷歌浏览器无法显示svg

发表于 2019-04-11 最后回复 2019-04-11

空空如也

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

TA关注的人 TA的粉丝

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