Reselect 开源项目教程

Reselect 开源项目教程

reselect项目地址:https://gitcode.com/gh_mirrors/res/reselect

1. 项目的目录结构及介绍

Reselect 是一个用于创建记忆化选择器的库,主要用于 Redux 应用中优化性能。以下是 Reselect 项目的目录结构:

reselect/
├── src/
│   ├── index.js
│   ├── selector.js
│   ├── defaultMemoize.js
│   ├── createSelector.js
│   └── utils/
│       ├── assertIsFunction.js
│       ├── curry.js
│       └── lodashFn.js
├── test/
│   ├── selector.spec.js
│   ├── defaultMemoize.spec.js
│   ├── createSelector.spec.js
│   └── utils/
│       ├── assertIsFunction.spec.js
│       ├── curry.spec.js
│       └── lodashFn.spec.js
├── .babelrc
├── .eslintrc
├── .gitignore
├── .npmignore
├── .travis.yml
├── LICENSE
├── package.json
├── README.md
└── yarn.lock

目录结构介绍

  • src/:包含 Reselect 的核心代码。
    • index.js:入口文件,导出所有主要功能。
    • selector.js:定义了基本的选择器功能。
    • defaultMemoize.js:提供了默认的记忆化功能。
    • createSelector.js:用于创建记忆化选择器的主要函数。
    • utils/:包含一些辅助函数。
  • test/:包含项目的测试文件。
  • .babelrc:Babel 配置文件。
  • .eslintrc:ESLint 配置文件。
  • .gitignore:Git 忽略文件配置。
  • .npmignore:NPM 忽略文件配置。
  • .travis.yml:Travis CI 配置文件。
  • LICENSE:项目许可证。
  • package.json:项目依赖和脚本配置。
  • README.md:项目说明文档。
  • yarn.lock:Yarn 锁定文件。

2. 项目的启动文件介绍

Reselect 项目的启动文件是 src/index.js,该文件导出了 Reselect 的主要功能,包括 createSelector 和其他辅助函数。

// src/index.js
export { default as createSelector } from './createSelector';
export { default as defaultMemoize } from './defaultMemoize';
export { createSelectorCreator, setCacheFunction } from './createSelector';
export { default as createStructuredSelector } from './utils/createStructuredSelector';

3. 项目的配置文件介绍

.babelrc

Babel 配置文件,用于转译 JavaScript 代码。

{
  "presets": ["@babel/preset-env"]
}

.eslintrc

ESLint 配置文件,用于代码风格检查。

{
  "extends": "eslint:recommended",
  "parserOptions": {
    "ecmaVersion": 2018,
    "sourceType": "module"
  },
  "env": {
    "node": true,
    "es6": true
  }
}

package.json

项目依赖和脚本配置文件。

{
  "name": "reselect",
  "version": "4.0.0",
  "description": "Selectors for Redux.",
  "main": "lib/index.js",
  "module": "es/index.js",
  "scripts": {
    "test": "jest",
    "build": "rollup -c",
    "prepublishOnly": "npm run build"
  },
  "dependencies": {
    "lodash": "^4.17.15"
  },
  "devDependencies": {
    "@babel/core": "^7.8.4",
    "@babel/preset-env": "^7.8.4",
    "babel-jest": "^25.1.0",
    "eslint": "^6.8.0",
    "jest": "^25.1.0",
    "rollup": "^1.31.1",
    "rollup-plugin-babel": "^4.3.3"
  },
  "peerDependencies": {
    "redux": "^4.0.0"
  }
}

以上是 Reselect 开源项目的教程,涵盖了项目的目录结构、启动文件和配置文件的介绍。

reselect项目地址:https://gitcode.com/gh_mirrors/res/reselect

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

朱丛溢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值