バベルが広く用いられているコーデックES6で、ES6コードはES5に変換することができ、それによって、ブラウザまたは他の環境の実行を達成しました。既存の環境ES6をサポートするかどうかを心配することなく、プログラムES6方法を記述するために使用できることをこれが意味。
バベルのプロフィールは、プロジェクトのルートディレクトリに保存され、.babelrcです。バベルは、この設定ファイルを使用しての最初のステップです
このファイルは、セットとプラグトランスコーディングルールに使用され、以下のように、基本的な形式は次のとおりです。
{ 「プリセット」:[]、 「プラグイン」:[] } 規則フィールドをトランスコードプリセットセット、ルールの公式セット、必要に応じて設置することが可能です。
#最新のトランスコーディングルール:
バベル・プリセット・最新#保存-devの - インストールNPM $
:トランスコードルールに反応
--save-DEV-バベル反応するプリセット#をインストールNPM $を
提案トランスコーディング規則(四つの段階の合計)の異なる段階の構文、オプションA:
$は--save-devのバベル・プリセット・ステージ0をインストールNPM
$は--save-devのバベル・プリセット・ステージ1をインストールNPM
$は--save-devのバベル・プリセット・ステージ2をインストールNPM
$は--save-devのバベル・プリセット・ステージ3をインストールNPM
1.プロファイル.babelrc
次に、これらのルールが追加さ.babelrcに:
{
"プリセット":
"最新"、
"反応する"、
"ステージ2"
]、
"プラグイン":[]
}
注:以下のツールを使用して、すべてのバベルをモジュールには、まず.babelrcを記述する必要があります
コマンドライントランスコーディングバベル-CLI
バベル-CLIツール、コマンドライントランスコーディングを提供バベル
(1)グローバルインストール:--globalバベル-CLIをインストールNPM
バベルのトランスコーディングは、地球環境の中で行いました。プロジェクトを実行したい場合は、地球環境は、環境に依存したプロジェクトであるバベルを、持っていなければならないことをこれが意味。一方、これはバベルの異なる目を引くの使用異なるバージョンをサポートすることはできません
基本的な使い方:
// トランスコード出力の結果
バベルのexample.js
//トランスコードの結果がファイルに書き込まれ
バベルexample.js --out-ファイルcompiled.js
バベルexample.js -o compiled.js
トランスコード//ディレクトリ全体
バベルsrcを- DIR-OUT LIB
バベルSRC -dのlib
// -sパラメータ発生源マップファイル
バベルSRC -d libに-s
(2)プロジェクトのインストールバベル-CLI
インストール:NPMは--save-devののバベル-CLIをインストール
そして、書き換えpackage.json
{
...
"devDependencies":{
"バベル-CLI": "^ 6.0.0"
}
}
3バベルノード
バベル-cliのツールがES6 REPL(インタラクティブ・パーサ)のサポート環境を提供バベル-nodeコマンドが付属しています。コードを直接実行することができES6
バベルノードの必要性を個別にインストールすることが、インストールのバベル-cliを行っバベルノード環境と併せてREPLを入力することができません
バベル・ノードは、直接ES6をスクリプトを実行することができます:
バベルノードes6.js
バベル・ノードは、プロジェクト内に設置することができる:NPMは--save-devののバベル-CLIをインストール
そして、書き換えpackage.json
{
「スクリプト」:{
「secript名」:「バベルノードscript.js」
}
}
//バベルノードの代替ノードを使用し、そうscript.js自体その任意のトランスコーディングせず
4.バベルレジスタ
彼はフックを追加したとして、バベル・レジスタ・モジュールは、コマンドを書き換える必要。その後、ロードが接尾辞を必要とするたびに、最初のバベルでトランスコードされます.jsファイル.jsxの.ES .es6ファイルです。
安装:NPMは--save-devのバベル・レジスタをインストール
( "./ index.js")を必要とします。
あなたはindex.jsトランスコーディングのためのマニュアルを持っていないので。
注:バベル・レジスタは、現在のファイルがトランスコードされるのではなく、トランスコーディングをロードするために、ファイルコマンドが必要になります。また、開発環境での使用に適したので、唯一の、リアルタイムトランスコーディングであるとして。
5.babelコア
コードはAPIのバベルのトランスコーディングを呼び出す必要があり、一部には、バベル・コアモジュールを使用する必要があります
インストール:NPMインストールバベルコア--save
プロジェクト内のバベルコアを呼び出します。
VaRのバベルは=( 'バベル-コア')が必要です
オブジェクトの内容の設定オプションは、あなたが公式文書を参照することができ、アドレスはbabeljs.io/docs/usage/options/です
6.babel-ポリフィル
バベルのデフォルトは唯一、このようなイテレータ、発電機、セット、マップ、プロキシ、リフレクト、シンボル、約束やその他のグローバルオブジェクト、およびグローバルオブジェクトで定義されたメソッドの数として、新たに変換することなく、APIを新しいJavaScriptシンタックス(構文)に変換(例えば、 Object.assign)はトランスコードされません。
インストール:NPMは--saveバベル-ポリフィルをインストール
頭に導入されました
インポート"バベル-ポリフィル" // 或: 必要( "バベル-ポリフィル")
バベルデフォルトトランスコーディングの詳細バベル・プラグイン・変換・ランタイムとしてAPIは、非常に大規模ではありませんモジュールdefinitions.js(https://github.com/babel/babel/blob/master/packages/babel-plugin-transform-runtime /src/runtime-corejs3-definitions.js):