240 发简信
IP属地:吉林
  • GridFS简介

    1. 简介 GridFS是MongoDB中存储和查询超过BSON文件大小限制(16M)的规范,不像BSON文件那样在一个单独的文档中存储文件,GridFS将文件分成多个...

  • babel-eslint

    babel-eslint allows you to lint ALL valid Babel code with the fantastic ESLint.babel-es...

  • React+Redux之combineReducers方法

    Redux 提供了一个combineReducers方法,用于 Reducer 的拆分。你只要定义各个子 Reducer 函数,然后用这个方法,将它们合成一个大的 Reduc...

  • 120
    React Native 调试篇

    这篇文档主要是为了帮助搭建React Native示例程序和调试环境而写。 我的环境配置: 1. Windows 10 操作系统 2. 本机已经装好了 NodeJS, Pyt...

  • //查看dispatch调用链
    const reducer={//模拟reducer,这里,我们不关心action
    state:0
    }
    class Store{//模拟store,这里我们只看state在dispatching前后变化
    constructor(reducer){
    this.reducer=reducer;
    }
    dispatch(data){//模拟diapatch引起的状态改变
    reducer.state++;
    alert(data);
    }
    getState(){
    return reducer.state
    }
    }

    loggerFirst = (store)=>(dispatch)=>(action)=>{
    console.log('go in first before dispatch:')
    const result = dispatch(action)
    console.log('go in first after dispatch, state:',store.getState())
    return result;
    }

    loggersecond = (store)=>(dispatch)=>(action)=>{
    console.log('go in second before dispatch:')
    const result = dispatch(action);
    console.log("go in second after dispatch, state:",store.getState())
    return result;
    }
    loggerThird = (store)=>(dispatch)=>(action)=>{
    console.log('go in third before dispatch:')
    const result = dispatch(action);
    console.log("go in third after dispatch, state",store.getState())
    return result;
    }

    applyMiddleware = (store,middlewares)=>{
    let dispatch = store.dispatch;
    middlewares.forEach((middleware)=>{
    dispatch=middleware(store)(dispatch);
    });
    return{
    ...store,
    dispatch
    }
    }
    let test = applyMiddleware(new Store(),[loggerFirst,loggersecond,loggerThird])
    test.dispatch({this:'is a good day',that:'is ok!'})
    //输出
    go in third before dispatch:
    go in second before dispatch:
    go in first before dispatch:
    go in first after dispatch, state: 1
    go in second after dispatch, state: 1
    go in third after dispatch, state 1

    Redux介绍之中间件

    Redux的基础知识前几篇该介绍的都介绍完了,现在介绍点高阶的内容。本篇介绍一下中间件。我最早接触到中间件是在学习Express框架时,可见中间件Middleware并不是个...

  • 很好,不错

    webpack4.0 基础知识

    1. webpack基础配置 webpack4.0必须安装webpack和wabpck-cli webpack可以0配置,它默认支持js模块化,因此可以使用commonjs语...

  • 120
    JS fetch API

    是啥? fetch API是用来替换XMLHttpRequest对象的 为啥要用? 封装度比XMLHttpRequest要高,fetch就像封装好的$.ajax()。当你不想...

  • 120
    使用express-validator对你的Express应用的用户数据进行验证

    开发web应用时,我们总是需要对用户的数据进行验证,这包括客户端的验证以及服务端的验证,仅仅依靠客户端的验证是不可靠的,毕竟我们不能把所有的用户都当成是普通用户,绕过客户端的...

  • 120
    Post请求的两种编码格式:application/x-www-form-urlencoded和multipart/form-data

    在常见业务开发中,POST请求常常在这些地方使用:前端表单提交时、调用接口代码时和使用Postman测试接口时。我们下面来一一了解: 一、前端表单提交时 applicatio...

  • 先了解生成器的基本语义规则,再看楼主的文章,就比较清楚了:+1:

    关于ES6生成器,你应该知道的地方

    摘自你不知道的JavaScript中卷 前言 通过前面一章的学习,我们知道了Promise为我们解决了回调带来的不信任问题以及基于回调的异步嵌套不符合人类大脑的规划方式,最终...

  • 写的不错,辛苦了。凭记忆能写出这些来还是不错的~~~

    js的数组、对象、map、set存储数据

    数组 js数组不区分元素类型,数组的使用,请参考我的另一篇文章javascript Array的基本用法 对象(经常使用的属性和方法) key,value的形式来存储数据 对...

  • 120
    js的数组、对象、map、set存储数据

    数组 js数组不区分元素类型,数组的使用,请参考我的另一篇文章javascript Array的基本用法 对象(经常使用的属性和方法) key,value的形式来存储数据 对...

  • 解决:Error: Can't find Python executable "python", you can set the PYTHON env variable

    问题 我们在执行 npm install 命令的时候有时会遇到错误 进而导致安装部分包错误,今天带大家简单快捷地100%解决这个问题 解决 已 windows 平台为例,管理...