web-dev-qa-db-ja.com

babel 7を使用してflatMapを追加する方法は?

記事 Removing Babel's Stage Presets by babelを読んだ後、たとえばstage-3(_ flatMap )から.babelrcにプロポーザルを追加する方法が完全には理解できません。

私の知る限り、flatMapはES5で記述できるため、プラグインではなくポリフィルが必要です。 @babel/polyfillを--save-devの下にインストールしましたが、ブラウザはこのメソッドが存在しないことを教えてくれます。私は@babel/polyfillは実験的な機能をカバーしていないことを推測します。

8
Stav Alfi

babel 7の@ babel/polyfillからflatMapが削除されました。次のように、core-jsから直接含める必要があります。

import "core-js/fn/array/flat-map";

または、Babel 6に含まれていたすべてのポリフィルが必要な場合:

import "core-js/shim";

参照: https://github.com/babel/babel/pull/844 (または直接、v7アップグレードガイドの 関連セクション

(また、新しいパッケージを追加する必要があることを心配しないでください:依存関係ツリーに既にcore-jsがあります; babel/polyfillが取得する場所 ステージ4+の残りのポリフィル

13
George

Core.js 3.xでは、次のインポートを使用します。

import "core-js/features/array/flat-map";
0
Derp