7.lib第三方库

7.lib第三方库

一 概述

js常用库(包括工具库、测试框架等)的笔记,大型的单独一个笔记,简单的就记录本笔记里。

三 基础

常见测试框架

Mocha、Jasmine、Karma、Tape

参数校验

ajv

https://www.npmjs.com/package/ajv

// 简单使用示例
// 导入包

// 定义校验规则
const schema = {
  type: "object",
  properties: {
    foo: {type: "integer"},
    bar: {type: "string"}
  },
  required: ["foo"],
  additionalProperties: false,
}

// 参数
const data = {
  foo: 1,
  bar: "abc"
}

const validate = ajv.compile(schema) // schema也可以是文件
const valid = validate(data)
if (!valid) console.log(validate.errors)

async-validator

加解密

crypto-js

uuid

assert

断言

Babel(待补充)

npm install babel-core babel-preset-es2015 babel-polyfill

新建一个.babelrc配置文件:

chai

断言库

core-js

https://github.com/zloirock/core-js

dotenv

https://www.npmjs.com/package/dotenv

虽然不借助库也可以管理环境变量,但借助该库可以更方便地从文件或Buffer中读取环境变量。(但现在更常见的做法是容器来做这个工作)

可以用来读取.env文件,.env文件的格式是key=value,value是字符串,如下

使用:

  1. 加载配置文件:实测它不能一次加载多个配置文件

  2. 预加载dotenv(todo)

适合的场景:

  1. allows you to separate secrets from your source code:代码仓库中不存放敏感的配置信息(将.env文件写入.gitignore),而是在部署的地方手动创建配置文件。

flow

参考

  1. 官方

    1. github:https://github.com/facebook/flow

    2. https://flowtype.org/

  2. 译者:https://zhenyong.github.io/flowtype/

Adds static typing to JavaScript to improve developer productivity and code quality。通过注解的方式来使用。

hotkeys-js

https://www.npmjs.com/package/hotkeys-js

input capture library,快捷键

http-server

jsvu

https://github.com/GoogleChromeLabs/jsvu

它是JavaScript(引擎)版本更新程序。jsvu可以轻松安装各种JavaScript引擎的最新版本,而无需从源代码编译它们。

Mocha

js测试框架

qs

更好的处理url参数的库,更多信息见:https://www.npmjs.com/package/qs

  1. parse(string[, options]):allows you to create nested objects within your query strings, by surrounding the name of sub-keys with square brackets [].

  2. qs.stringify(object[, options])

五 经验

Last updated

Was this helpful?