[解決済み] Export Default Const」が無効なのはなぜですか?
質問
下記で問題ないようですね。
const Tab = connect( mapState, mapDispatch )( Tabs );
export default Tab;
しかし、これは不正確です。
export default const Tab = connect( mapState, mapDispatch )( Tabs );
それでもこれはいいんです。
export default Tab = connect( mapState, mapDispatch )( Tabs );
これは、なぜか説明できますか?
const
は無効であり
export default
? として宣言されたものは、不必要な追加& なのでしょうか?
export default
は
const
などと言うのでしょうか?
どのように解決するのですか?
const
というのは
let
,
であります。
レキシカルデクレアレーション
(
VariableStatement, 宣言
) を使って、ブロックの中で識別子を定義します。
と混在させようとしているのですね。
default
というキーワードがあります。
を期待する
HoistableDeclaration, ClassDeclarationの略。
または
AssignmentExpression(アサインメント式
をクリックすると、それに続きます。
したがって、それは SyntaxError .
もし、あなたが
const
を使用せず、識別子を提供する必要があります。
default
.
export
はそれ自体で
VariableStatement
または
宣言
をその右側に配置します。
以下は大丈夫です。
export default Tab;
Tab
は
AssignmentExpression
という名前がついているので
デフォルト
?
export default Tab = connect( mapState, mapDispatch )( Tabs );
は大丈夫です
これ
Tab = connect( mapState, mapDispatch )( Tabs );
は
AssignmentExpression
.
更新しました。 問題を想像する別の方法
もし、あなたがこれを概念的に理解しようとしていて、上記の仕様推論が役に立たないのであれば、次のように考えてみてください。
もし
default
が予約済みトークンではなく、合法的な識別子だった場合、別の書き方はどうなるのでしょうか?
export default Foo;
と
export default const Foo = 1;
?"
このような場合、拡大した書き方は
// pseudocode, this thought experiment is not valid JS
export default Foo;
// would be like
export const default = Foo;
export default const Foo = 1;
// would be like
export const default const Foo = 1;
// so would the following line make sense?
const bar const Foo = 1;
を拡張する有効な引数があります。 が必要です。 のようなものです。
// pseudocode, this thought experiment is not valid JS
export default const Foo = 1;
// would be like
const Foo = 1;
export const default = Foo;
しかし、この場合、以下のように曖昧になります。 セルゲイさんのコメント そのため、このパターンを明示的に記述する方が理にかなっています。
関連
-
[解決済み】JavaScriptで「無効な日付」のDateインスタンスを検出する
-
[解決済み] std::string を const char* または char* に変換する方法
-
[解決済み] なぜGoogleはJSONレスポンスにwhile(1);を前置するのでしょうか?
-
[解決済み] git export」(「svn export」のようなもの)を行うか?
-
[解決済み] JSONPとは何か、なぜ作られたのか?
-
[解決済み] const int*、const int * const、int const *の違いは何ですか?
-
[解決済み] C#のconstとreadonlyの違いは何ですか?
-
[解決済み] Static readonly」対「const」。
-
[解決済み】JavaScriptの関数にデフォルトのパラメータ値を設定する
-
[解決済み】PHP|define() vs. const.
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
jsを使った簡単な照明スイッチのコード
-
Vueはランニングライト形式のテキストを水平方向にスクロールする機能を実装している
-
vueが定義するプライベートフィルタと基本的な使い方
-
vueのプロジェクトでモックを使用する方法を知っていますか?
-
Vueの「データを聴く」原則を解説
-
Vueの一般的な組み込みディレクティブの説明
-
[解決済み】TypeError: Router.use() はミドルウェアの関数を要求しているが、Object を取得した。
-
[解決済み] TypeError: $.ajax(...) is not a function?
-
[解決済み】JavaScriptエラー(Uncaught SyntaxError: Unexpected end of input)
-
JavaScriptのStringに関する共通メソッド