自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 问答 (1)
  • 收藏
  • 关注

原创 移动端 分割线before写法

::before { content: ''; pointer-events: none; width: 100%; position: absolute; left: 0; bottom: 0; border: 0 solid #dcdcdc; border-top-width: 1px; transform: scaleY(0.5); }

2020-05-18 15:53:33 259

原创 redux源码解析-中间件部分

redux添加中间件需要使用到一个redux原生提供的一个方法 applyMiddleware, 我们就从这个方法说起整个中间件部分代码不多, 但是函数的嵌套层级较多, 很容易乱applyMiddleware先看源码:export default function applyMiddleware(...middlewares) { return createStore => (....

2020-05-07 01:30:09 164

原创 上海电信网关限制连接设备上限解决方法

初到上海跟朋友合租,房东给装的宽带到我这不能用了,一番搜索发现是设备连接数超限,我们的是限制最大10台设备同时连接,超出的设备无论是有线还是无线都是能连接无Internet。扫描机身二维码下载手机端管理app,上面显示超出设备无法连接注意: 第一个下载这个app连接成功的人就是管理员,之后其他人员想要使用这个app都要向管理员申请 (庆幸房东没有使用这个app,我成了管理员)2. ...

2020-04-09 12:07:14 16303 2

原创 .gitignore保留忽略目录下的指定文件夹

/dist/* // 忽略dist下的所有文件!/dist/js // 除了js文件夹

2020-03-26 14:15:20 3384

原创 webpack中css加载滞后的问题

使用webpack打包css 使用到两个loader css-loader style-loadercss-loader: 解析js中引入的cssstyle-loader: 把CSS内容插入的<style>标签中const path = require("path");const HtmlWebpackPlugin = require("html-webpack-plugin"...

2020-03-19 15:52:38 388

原创 echarts 使用记录

这个echarts大致就是使用init方法创建画布, 之后通过setOption方法传入配置, 他会通过各种配置帮我们画出一个图表.主要复杂的是配置的内容: 配置文档echarts不是那种传入数据就能什么都帮你做好的图表工具, 如果你不想使用默认的样式的话, 大部分内容需要自己配置通过series可叠加的特性, 可以实现各种你想要的自定义图表突然不知道该写什么了, 反正官网有示例和中文文...

2020-03-18 10:26:40 99

原创 云服务器部署前端项目记录

安装apache服务器这步跳过, apache服务器已经装好了, 不过服务器目录忘了apache在Ubuntu默认安装地址是/etc/apache2, 这个目录下有conf文件, 可以配置服务器文件地址默认地址是/var/www接下来我们把打包好的文件上传到这里文件上传首先准备好项目的包build.zip这里使用scp命令scp -P 端口 c://xxxx.txt user@ip...

2020-02-23 12:35:58 207

原创 请求远程主机上的node服务器

上一篇记录了怎么搭建一个简易node服务器接下来我们把基础的代码放到云服务器上, 访问一下试试先去云服务器控制台安全组中打开3000端口, 我的node服务器监听的是这个端口然后和上篇一样吧代码放在服务器上const http = require("http")http.createServer(function (req, res){ res.writeHeader(200...

2020-02-22 17:48:32 192

原创 Node搭建服务器记录

node搭建一个简易服务器比较简单let http = require("http");http.createServer(function(req, res) { res.write("请求成功"); res.end(); }) .listen(3000);console.log("服务器已经运行在 http://192.168.137.1:3000");创建...

2020-02-22 17:13:57 146

原创 Ubuntu服务器使用随手记(一)

今天想要搭建node环境第一步安装node查看Ubuntu版本sudo uname -m // x86_64如果显示i686,你安装了32位操作系统;如果显示 x86_64,你安装了64位操作系统。下载nodewget https://npm.taobao.org/mirrors/node/v12.16.1/node-v12.16.1-linux-x64.tar.xz具体版本号去...

2020-02-19 22:07:25 104

原创 使用阿里云服务器

使用阿里云服务器重置密码(重置密码后需要重启服务器才能生效)配置中开通22(VNC), 3389(ssh)端口, 用来远程连接服务器Ubuntu系统一般默认ssh不可通过root用户登录, 需要修改配置文件/etc/ssh/sshd_config PermitRootLogin yes修改配置文件后使用需要重启ssh服务 service ssh restart (如果不行可以重启服务器...

2020-02-10 16:25:18 141

原创 npm包管理常用命令记录

常用命令安装package中的所有包npm installyarn install安装指定包npm i <包名>yarn add <包名>设置某属性npm config set <name> <value>例: npm config set registry https://registry.npm.taobao.org设置某属性...

2020-01-16 10:44:18 131

原创 遍历树

// 遍历树export const traverseTree = (tree, action) => { let stack = []; if (tree instanceof Array) { stack = tree; } while (stack.length) { const node = stack.shift(); action(no...

2020-01-15 18:29:51 115

原创 获取高阶组件包裹的子组件实例

Dva的connect组件// 子组件@connect( ({ invest, loading }) => ({ dataList: invest.dataList }), null, null, { withRef: true } // 添加此属性 使父组件能获取到子组件实例)// 父组件调用// 这里我是用 React.createRef() 获取...

2020-01-15 14:57:30 824

原创 antd Table同名行合并[前端实现]

2020-01-10 10:15:01 星期五传入数据列表和需要行合并的字段名调用后会为每行数据添加一个${name}RowSpan字段 保存rowSpan的值 setRowSpan = (data, name) => { let titleRow = data[0]; // titleRow[`${name}rowSpan`] 这种写法是为了适应表格中有多列合并...

2020-01-10 10:23:56 1678

原创 js生成随机字符串

Math.random().toString(36).substr(2)

2020-01-04 14:36:24 111

原创 git提交时eslint验证不通过

删除文件项目\.git\hooks\pre-commit

2020-01-02 15:01:04 3130

原创 css Modules 笔记

css Modules 笔记通过对样式文件进行预编译, 为每个类生成独一无二的类名, 保证名称的唯一性import React from "react";import style from "./App.css";export default () => { return ( <h1 className={style.title}> // 以对象形式传值...

2019-12-06 11:49:06 98

原创 css选择器记录

:nth-child文档里是这么描述的:nth-child(an+b) 这个 CSS 伪类首先找到所有当前元素的兄弟元素,然后按照位置先后顺序从1开始排序,选择的结果为CSS伪类:nth-child括号中表达式(an+b)匹配到的元素集合(n=0,1,2,3…)a 和 b 都必须为整数,并且元素的第一个子元素的下标为 1。换言之就是,该伪类匹配所有下标在集合 { an + b; n = 0...

2019-12-05 11:18:56 124

原创 js实现excel同名行合并

生成handsontable的行合并配置, 我的项目中没有过多需求, 所以我写的列是固定的, 以及变量名有不规范之处, 请自行修改扩展方法:function mergeCells(startRow, data) { let xian = (xiang = cun = { value: null }); const result = []; for (let i = 0; i &...

2019-11-26 10:24:56 689

原创 dva中全局调用dispatch

window.g_app._store.dispatch({ type: 'login/logout', });

2019-11-19 15:28:17 2726

原创 antd Table 固定列空缺问题

antd表格的固定列是用复制列然后覆盖在原表格上方实现的, 被固定的列此时还在原表格中, 但是被设置了隐藏如果不给固定的列设置固定的宽度 就会导致两层列宽不一致, 上层列盖不住下面被隐藏的列的时候, 就会出现空缺这时候可以设置visibility: visible;让下面的列显示出来填补空缺, 就不会影响视觉和点击等, 但是只能固定在左侧的列使用.dataTable { ...

2019-11-15 14:40:14 3026

原创 自定义事件

const orignalSetItem = store.setstore.set = function (key, value) { const setItemEvent = new Event('storage'); setItemEvent.key = key; setItemEvent.value = value; window.dispatchEvent(setItem...

2019-11-14 17:35:23 140

原创 socket传送数据, unicode编码转汉字

socket推送到前端的数据中, 汉字被转为unicode编码" 双引号等符号被转为 &quot; 这种形式暂时没有找到一步到位的转回方法, 只能一步一步来 msg = msg.replace(/\\u/g, '%u'); // 将\u转换为%u 下一步解码 msg = unescape(msg); // 解码 msg = msg.replace(...

2019-11-14 16:57:18 607

原创 antd Form级联元素回显

editRow = key => { this.dispatch({ type: 'project/detailProject', payload: { key, }, callback: data => { this.setState({ // 拿到回显数据之后设置子级的选项列表 stage: st...

2019-10-29 15:09:56 1835

原创 IE下 下载兼容

const saveAs = (blob, fileName) => { if ('msSaveOrOpenBlob' in navigator) { window.navigator.msSaveOrOpenBlob(blob, fileName); return; } const a = document.createElement('a'); a.dow...

2019-10-21 10:23:40 226

原创 字符串方法总结

别找这种总结了 直接去MDN-String看文档吧字符串简单操作方法参数返回值描述用例charAtindex: 下标String返回指定下标的字符str.charAt( 1 )concatstr: 任意个字符串String拼接字符串, 如果传入字符数组,会以’,'分隔str.concat(‘aaa’,‘bbb’)sliceindex1: ...

2019-10-16 17:55:04 74

原创 Array.fill()使用记录

项目中用到了二维数组, 遇到了一些问题, 记录一下:使用Array(10)创建的数组是一个只有长度的数组, 数组中储存的是empty, 不可循环遍历想要遍历就需要数组中包含可遍历元素于是填充数组用到了Array(10).fill(undefined)方法 fill文档得到一个长度为10, 且每个元素都是undefined的数组fill() 方法进行填充时, 如果传入引用类型, 则数...

2019-10-14 18:10:31 1041

原创 JS正则表达式相关方法

JS正则表达式相关方法RegExp 方法方法名描述complie编译正则表达式exec检索字符串中指定的值。返回找到的值.test检索字符串中指定的值,返回true 或者falselet str = 'HelloWorld!'let rex = /l/gconsole.log(rex.exec(str)) // lconsol...

2019-10-14 17:59:27 156

原创 数组操作方法总结

数组的简单操作方法名描述返回值例push在数组末尾添加指定元素lengthpush(val)unshift在数组开头添加指定元素lengthunshift(val)shift删除数组第一个元素被删除的元素shift()pop删除数组最后一个元素被删除的元素pop()concat链接两个数组Arrayarr1.conca...

2019-09-30 13:49:34 66

原创 React 16.8 Hook

React 16.8 新增 Hook 文档简介这不是一个函数,也不是一个属性对象什么的,它只是一种特性的称呼我们可以叫它钩子函数官方是这么概括它的:Hook 是 React 16.8 的新增特性。它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性。自带的 Hook 函数系统为我们准备了一些自带的钩子函数, 下面介绍一下这些函数的使用方法和特...

2019-09-30 13:48:19 146

原创 React组件生命周期

初始化constructor(props)构造方法, 组件被创建的时候调用, props 是父组件传递过来的属性对象, 必须在这个方法中首先调用 super(props); 才能保证 props 被传入组建中componentWillMount组件被挂载到 DOM 之前调用, 且只会被调用一次.render该方法返回一个 react 元素用于描述组件的 UI, 不能在这...

2019-09-30 13:44:20 54

原创 localStorage 和 sessionStorage

浏览器的储存机制 — storagelocalStorage 和 sessionStorage方法localStoragesessionStoragecookie生命周期永久会话下有效, 关闭页面或浏览器后被清除设置有效期之前有效大小5M 左右5M 左右4K 且一般为 20 个于服务器通信不参与服务器通信不参与服务器通信每次请求放在...

2019-09-30 13:42:58 121

原创 AMD 与 CMD规范的异同

AMD和CMD应该算是javascript最早的模块化规范了,甚至现在js中的模块化规范也是根据其演变而来AMD规范是对RequireJS推广过程中的规范化产出CMD是对SeaJS推广过程中的规范化产出现在使用更多的还是CommentJS 和 ES6规范这些规范都是为了实现javascript的模块化开发而存在的区别对于依赖的模块, AMD是前置执行, 加载所有依赖在执行模块内代...

2019-09-30 13:39:58 182

原创 把字符串作为函数执行

new Function('return 12+12') // 24

2019-09-30 13:38:21 466

原创 深克隆

这个方法是通过递归实现/** * 复制Array , Object , Number , String , Boolean */function clone( object ){ /** * 先看 = 号右边的 * object.constructor === Array : 根据对象的构造器去判断是用什么函数创建的 * ? [] : {} ...

2019-09-30 13:37:42 62

原创 React环境搭建总结

React搭建环境总结必要组件名称简介webpack打包工具插件–html-webpack-plugin可以自动生成html文件, 或加载生成的bundlesextract-text-webpack-plugin单独打包样式文件加载器–css-loader解析css文件file-loader解析文件,返回其公共地址ur...

2019-09-30 13:35:50 80

原创 antd 表格列宽自适应方法以及错误处理

当不给某列设置宽度时这一列的宽度等于: (表格宽度-有宽度列的宽度)/没有固定宽度的列的数量也就是没有设置宽度的列会平分表格中余下的宽度在antd 的表格中, 当你不设置表格滚动, 并且你给每一列设置了固定宽度, 那么他们会按照设置宽度的比例瓜分表格的宽度表格横向滚动, 序号, 权属人左定位antd 中的表格列固定是隐藏原列, 然后又在上面覆盖新列实现的, 也就是说白色部分实际是原列, 只...

2019-09-30 11:00:08 10665 1

原创 antd Form 表单校验方法无响应

antd 的 表单校验方法包括 validateFields 和 validateFieldsAndScroll里面可以接收校验字段数组, options, 和一个回调函数from.validateFields([name, age], {}, (err, val)=> {})校验全部表单数据from.validateFields((err, val)=> {}) // 无响...

2019-09-30 10:24:14 3710

原创 dva 调用dispatch无响应

调用dispatch无响应dva的接口调用方式是 dispatch -> models -> services问题发生时的代码大概是这样的 *todo({ payload }, { call, put }) console.log('第二行') const res = yield call(todoService, payload); ...

2019-09-30 10:12:57 4780

空空如也

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

TA关注的人

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