1、core-js是完全模块化的javascript标准库。 包含ECMA-262至今为止大部分特性的polyfill,如promises、symbols、collections、iterators、typed arrays、etc,以及一些跨平台的WHATWG / W3C特性的polyfill,如WHATWG URL。 它可以直接全部注入到全局环境里面,帮助开发者模拟一个包含众多新特性的运行环境,这样开发者仅需简单引入core-js,仍然使用最新特性的ES写法编码即可;也可以不直接注入到全局对象里面,这样对全局对象不会造成污染,但是需要开发者单独引入core-js的相关module,并可能还需要通过手工调用module完成编码,没法直接使用最新ES的写法。它是一个完全模块化的库,所有的polyfill实现,都有一个单独的module文件,既可以一劳永逸地把所有polyfill全部引入,也可以根据需要,在自己项目的每个文件,单独引入需要的core-js的modules文件。

2、Lodash是一个一致性、模块化、高性能的 JavaScript 实用工具库。简单来说,这个库和 JQuery 差不多的一个意思,JQuery 通常能够让你能够更快对 HTML 中的元素进行选择,大家都知道 Jquery 的默认调用函数使用的是 $,Lodash 能够对你需要的数据类型进行一些快速的操作,官方网站的地址为:https://lodash.com/。例如上面的代码,你可以对一个数组进行一个遍历,直接使用函数就可以了。否则的话,你可能需要自己写一个 for,看起来是不是有点麻烦。Lodash 能够简化很多的操作,你也可以通过官方网站对已有的方法进行搜索。

import * as _ from 'lodash';
_.each([1, 2], function(value) {
console.log(value);
});

3、moment是一个时间格式化工具库,可以对时间进行处理

4、cross-env是一款运行跨平台设置和使用环境变量的脚本。

在package.json中添加一条命令

npm run build 打包的是qa环境

npm run prod 打包的是生产环境

一些npm插件的介绍_开发者

这里可以看到 build 和 prod 命令执行的都是 node build/build.js 这个文件,不同之处在于 build 命令前面多了一段

cross-env QA_ENV=qa, 这就是今天主要想记录的主角

只要在想要执行的文件之前加cross-env [xxx]=xxx

接下来我们在prod.env.js中做判断

一些npm插件的介绍_jquery_02

这样,运行不同命令,走不同服务