Notoriously Pedantic Magistrate

    @oopsunome/manual-sort

    1.0.2 • Public • Published

    Codacy Badge Build Status Coverage Status dependencies Status

    @oopsunome/manual-sort

    手动排序数组,如:

    [
      1,
      [1, 2, 3],
      'loaded',
      null,
    ]

    将上面数组中 null 放置在 [1, 2, 3] 的位置,即:将第 4 位移动到第 2 位 (注意,并非对调位置),得到下面新的数组:

    [
      1,
      null,
      [1, 2, 3],
      'loaded',
    ]

    @oopsunome/manual-sort 支持在浏览器以及 Node.js 环境下使用。Node.js 方面,持续且仅支持最新 LTS 版本的。

    目录

    安装

    # 使用 NPM 
    $ npm i @oopsunome/manual-sort lodash
     
    # 使用 Yarn 
    $ yarn add @oopsunome/manual-sort lodash
     
    # 使用 PNPM 
    $ pnpm install @oopsunome/manual-sort lodash

    使用

    manualSort(options)

    • options {Object}
      • data {Array} 待操作的数据
      • fromIndex {Number} 开始位置
      • toIndex {Number} 目标位置
    • 返回: {Promise} 被排序后的数据
    import { manualSort } from 'manual-sort';
     
    (async function() {
      try {
        const sorted = await manualSort({
          data: [ 1, [ 1, 2, 3 ], 'loaded', null ],
          fromIndex: 2,
          toIndex: 1,
        });
     
        console.table(sorted); // [ 1, 'loaded', [ 1, 2, 3 ], null ]
      } catch(err) {
        throw err;
      }
    })();

    manualSortSync(options)

    • options {Object}
      • data {Array} 待操作的数据
      • fromIndex {Number} 开始位置
      • toIndex {Number} 目标位置
    • 返回: {Array} 被排序后的数据
    import { manualSortSync } from 'manual-sort';
     
    const rslt = manualSortSync({
      data: [ 1, [ 1, 2, 3 ], 'loaded', null ],
      fromIndex: 2,
      toIndex: 1,
    });
     
    console.table(rslt); // [ 1, 'loaded', [ 1, 2, 3 ], null ]

    参与开发

    准备开发环境

    详细参见 SETUP.md

    安装依赖

    @oopsunome/manual-sort 使用 Yarn 包管理器,执行 yarn install 安装依赖。

    开始开发

    yarn start

    生产构建

    yarn build

    测试

    yarn test

    贡献指南

    仔细查阅 CONTRIBUTING.md 以了解详情。

    证书

    @oopsunome/manual-sort 获得了 MIT 许可,仔细查阅 LICENSE.md 以了解详情。

    待办

    • 支持 解构直接引用 2 种暴露接口的方式;
    • 提供同步、异步 2 种编程方式,异步编程采用 Promise
    • 支持构建 CommonJS, AMD, ESM, UMD 模式的模块;
    • 不将 lodash 等库打包;
    • 功能测试;
    • 捆绑 Git 倒钩
    • ESlint 检测;
    • 自动化生成所有依赖的开源证书;
    • 自动化发布;
    • 使用 David DM 实现 依赖是否最新 检测;
    • 使用 Travis CI 实现持续集成;
    • 使用 Coveralls 可视化测试用例覆盖率;
    • 使用 Codacy 实现代码质量检测;
    • 在什么场景下使用 @oopsunome/manual-sort?
    • 编写 开发环境指南
    • 文档:在哪里可以获得更多帮助?
    • 文档:设计思想;
    • 文档:维护策略;
    • 文档:编码风格指南
    • 编写 发布流程指南
    • 编写 Git 指南
    • 编写 命名指南
    • 编写 版本指南
    • 更新日志;
    • 谁在使用 @oopsunome/manual-sort?
    • 性能测试;

    Install

    npm i @oopsunome/manual-sort

    DownloadsWeekly Downloads

    1

    Version

    1.0.2

    License

    MIT

    Unpacked Size

    33.1 kB

    Total Files

    11

    Last publish

    Collaborators

    • avatar