[解決済み] reactjsとbabelを使った関数のエクスポート
2022-03-09 14:37:51
質問
reactjsを使用したプロジェクトがあり、babelでトランスパイルされています。私はes2015とreactのトランスフォームを私の
.babelrc
. 私は現在リファクタリング中で、最初のパスでは基本的に次のようにしました。
export class foo
を必要なもの全てに適用しています。これらのクラスの多くは、本当は関数であるべきなので、そのように書き直そうとしているのですが、同じエラーが出続けています。私のメインアプリケーションファイルは次のようなものです。
import React, { Component } from 'react';
import {Foo, Bar} from './components/ui.js';
class Application extends Component {
constructor(props){
super(props);
this.state = {
object: null
}
}
componentDidMount(){
// code
}
componentDidUpdate(){
// other code
}
render(){
return(
<div>
<Foo />
<Bar />
</div>
)
}
}
module.exports = Application
そして、私のインポートは
ui.js
はこのようなものです。
import React, { Component } from 'react';
export class Foo extends Component {
constructor(props){
super(props);
}
render() {
return (
// Some JSX
)
}
}
export class Bar extends Component {
constructor(props){
super(props);
}
render() {
return (
// Some other JSX
)
}
}
これらのエクスポートされたクラスの1つを、例えば関数に変更しようとすると。
// Note: I have tried a variety of syntax such as function, const, etc...
export var Bar {
render() {
return (
// Some other JSX
)
}
}
以下のようなエラーが発生します。
SyntaxError: Unexpected token <line where I declare a function>
何が間違っているのかわからず、グーグル検索しても他の問題の答えしか出てきません。
どのように解決するのですか?
関数を変数として定義するのと同じで、exportを前面に追加するだけです(ES6構文を使用)。
export const render = () => (
// Some other JSX
);
または、その代わりに
export var render = function() {
return (
// Some other JSX
);
};
関連
-
[解決済み] エラー。モジュールhtmlが見つからない
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] let "と "var "の使い分けは?
-
[解決済み] jQueryでチェックボックスに "checked "を設定する
-
[解決済み] JavaScriptで現在のURLを取得する?
-
[解決済み] callとapplyの違いは何ですか?
-
[解決済み] JavaScriptで要素のクラスを変更するにはどうすればよいですか?
-
[解決済み] Babel 6 regeneratorRuntimeが定義されていません。
-
[解決済み] async/await関数を並列に呼び出す
-
[解決済み] アロー関数」と「ファンクション」は同じものですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】フォームコントロールの値アクセサがない
-
[解決済み】JavaScriptのinnerHTMLで要素が更新されない
-
[解決済み】SyntaxError: 'import' と 'export' は 'sourceType: module' とだけ表示されるかもしれない - Gulp
-
[解決済み】SyntaxError: ChromeのJavascriptコンソールでUnexpected Identifierが発生する。
-
[解決済み] [Solved] Uncaught TypeError: nullのプロパティ 'appendChild' を読み取ることができない。
-
[解決済み】Redux TypeError: 未定義のプロパティ 'apply' を読み取れない
-
[解決済み] ローカルファイルを開くことができません - Chrome: ローカルリソースのロードが許可されていません
-
[解決済み】FirefoxでGoogle Maps V3をリモートで使用すると「googleが定義されていません」と表示される。
-
[解決済み】TypeError: res.status は関数ではありません。
-
[解決済み】HTMLの最初の行に予期しないトークン<がある。