web-dev-qa-db-ja.com

React.jsデコレータは、プロポーザルの更新が保留中の6.xではまだサポートされていません

私がアプリを構築するために使用しているテクノロジーは、React、Web-pack、Babel、AlT(フラックスの実装)です。

Webパックがアプリをコンパイルしようとするとエラーが発生します。不足しているライブラリがわかりません。

誰かアドバイスしてもらえますか?

  ##.babelrc file##
  {"presets": ["react", "es2015", "stage-0"]}

Screen Shot

15
Erkan Demir

答えは主にここに提供されています https://stackoverflow.com/a/34210231/ ですが、便宜上ここで詳しく説明します:

基本的に、TC39は提案を変更しているため、Babelはデコレータの実装を延期しています。 Babel 5バージョンのデコレータ(または同様のもの)が必要な場合は、この特別なプラグインをBabelに追加できます--- https://www.npmjs.com/package/babel-plugin-transform-decorators-legacy

9
Qiming

Babel 6はまだデコレータをサポートしていません。 この問題 を参照してください。

現時点で最も簡単で安定したソリューションは、バージョン5.8.34を使用することです。

7

TC39はデコレータの提案を変更しているため(「古い」ものはbabel 5に実装されています)、babelチームは新しい実装を作成するか、古いものをbabel5から移植するのを待っています。デコレータを使用する簡単な方法は次のとおりです。 babel 5を使用し、TC39で新しい提案を待って、babelチームに実装させます。

2
Alejandro Silva

私は同じ問題を抱えていました、そして私が重複した宣言を削除した後

"presets: ['es2015', 'react','stage-0'],"

webpack configと.babelrcでは、最終的に機能します。

0
WEN-JY