插件释义
es2015 === es6
es2016 === es7
es2017 === es8
babel: babel可以将当前运行平台(浏览器、node服务器)尚不支持的下一代或几代js语法编译为当前支持的js语法版本,比如可以把es6 es7和es8的js代码编译为es5的代码。
babel-core:所有转换都将使用您的本地配置文件(.babelrc或package.json)
babel-eslint
babel-loader:loader加载器
babel-polyfill:对es6语法增加垫片转换,对部分api不支持
babel-plugin-transform-runtime:对es6或es7一些api支持(如:async, await等),补充polyfill的不足
presets和plugins:
plugins:功能插件优于presets执行,plugins从第一个插件顺序执行,presets从最后一个插件逆序执行;
presets:插件集合的预设,包含一部分的plugin插件
https://www.cnblogs.com/zhaozhipeng/p/8267741.html
babel-preset-es2015: 可以将es2015即es6的js代码编译为es5
babel-preset-es2016: 可以将es2016即es7的js代码编译为es6
babel-preset-es2017: 可以将es2017即es8的js代码编译为es7
babel-preset-stage-x: 可以将处于某一阶段的js语法编译为正式版本的js代码
stage-X: 指处于某一阶段的js语言提案。
提案共分为五个阶段:
stage-0: 稻草人-只是一个大胆的想法
stage-1: 提案-初步尝试
stage-2: 初稿-完成初步规范
stage-3: 候选-完成规范和浏览器初步实现
stage-4: 完成-将被添加到下一年发布
babel-preset-env:
当前 babel 推荐使用 babel-preset-env 替代 babel-preset-es2015 和 babel-preset-es2016 以及 babel-preset-es2017 ,
env的支持范围更广,包含es2015 es2016 es2017的所有语法编译,
并且它可以根据项目运行平台的支持情况自行选择编译版本。
2018.12.11 pm 5: 00 add
设置npm全局安装包指定目录:
创建一个目录前缀.temp
npm config set prefix=~/.temp
配置全局环境变量 - 设置.bash_profile文件:
vi ~/.bash_profile
增加一行
export PATH=“~/.temp/bin:$PATH”
刷新
Source ~/.bash_profile
执行安装命令
npm install -g @test/test1 —registry=http://xxx.xxx.xxx.xxx
test1 -v
本地包发布全局
进入目录下npm link, 本地发全局使用, 本地copy to
/usr/local/lib/lau // name -> 全局-包整个目录名
/usr/local/bin/lau // bin -> 对象键名,访问的文件添加到bin-全局
需要用package.json,
{
“name”: “lau”,
“main”: “lib/main.js”,
“bin”: {
“lau”: “lib/main.js”
}
}
bin文件顶部需要加:#!/usr/bin/env node
全局require到本地,当前目录下npm link [package], 使用直接require.
无论是本地发全局,还是全局到本地,
本地改了,全局也改了,
全局改了,同样同步更改到本地。
npm包创建,需要建package.json