起因
最近在做项目中,遇到一个项目需求,在 ui 上显示一个优惠券的卡片。这个卡片和大家一般看到的类似,中间会有两个内凹的半圆。实现这个背景卡片的方式最简单的就是用背景图这里我就不说了。还有一个方式就是用 css 样式来写一个这样的效果。
在代码开发过程中,代码的版本管理是必不可少的。现在大部分使用的都是 git 版本管理工具,关于 git 的优点和安装使用方式我就不一一叙述了,需要的可以自行百度。这里我主要记录下当前比较流行的 git-flow 工作流的安装和使用。
在项目中,有很多大致相同的页面。又不想每次都写相同的页面布局,所以封装一个公共的页面,然后通过继承多态来实现每个自己的页面实例。其中用到高阶组件的知识,这里巩固学习一下高阶组件的实现方法和使用场景。
在开发 react 项目中,使用的是阿里开源的框架 umi。这个架构非常好用,可以集成我们需要的 dva、antd、antd pro、typescript 等。对我们开发新项目的架构初始化非常友好。但是官方的 umi 虽然好用,但是文件结构是通用的,不符合我们各自的项目需求。
在我们想使用 scss 来写样式的时候,避免不了的需要安装 node-sass 包,但是只要是安装的过这个包的都知道,这个包的安装是非常的困难。所以这里提供一个新的解决方法,解决这个包安装慢的问题。
之前在 react 的类组件中就使用过 lodash 的防抖和节流的工具函数,具体可查看文章。但是当 hook 盛行的时候,我也尝试用这种方式来从新使用一次,但是在使用的过程中出现了挖坑填坑,特此记录下,方便自己查看。
一般服务器是 linux 系统,所以我也是在这个系统下安装使用 nginx 的,简单记录下使用过程
本项目的面试题来源于 sudheerj/reactjs-interview-questions 这个项目。
中文版https://github.com/semlinker/reactjs-interview-questions
var arr = [7,2,0,-3,5];
1 | var max = Math.max.apply(null,arr); |