モジュールのロードJSXTransformer.js
に使用しているため、開発でもブラウザで使用できません。require.js
を実行するjsx --watch src/ build/
と、実際にjsx->js
はディレクトリ内のファイルに対して1回だけ変換が実行されますsrc
が、その後、ディレクトリ内のファイルを変更してもsrc
、何も起こらず、変換も行われませんjsx->js
(jsx --watch
変更に気付かなかった場合など)。
6 に答える
私にも同じことが起こりました。
次のコマンド ラインを試してください。
jsx --watch -x jsx src/ build/
私は同じ問題を抱えています。おそらく、「--watch」がどのように機能するかをよく理解していないためです。私が最初にしたことはこれでした: ターミナルを開き、「watch」コマンド (例: 「jsx --watch /src /build」) を打ち込みます。すべて良い。
その後、ターミナルウィンドウを閉じましたが、その後何も機能しませんでした。
次に、ターミナルを再度開き、コマンドを再入力すると、watch コマンドが機能しました。
その後、ターミナルを閉じると、機能しなくなりました。
ここにパターンを感じています。JSX ウォッチ コマンドは、ターミナル ウィンドウが開いているときにのみアクティブになりますか? 「監視」は「一度設定したら忘れる」コマンドだと思っていましたが、それよりも儚いものに聞こえますか?
この問題は、おそらくファイルのサフィックスが原因jsx
でありjs
、jsx コマンドが.jsx
ファイルを認識しないためです。
user2038099が言ったようにできます:
jsx --watch -x jsx src/ build/
-x, --extension モジュール識別子を解決するときに想定するファイル拡張子
または、src フォルダー内のファイルのサフィックスを.js
.
実際には、間違ったフォルダーからコマンドを開始しようとしたり、ビルドしたいフォルダーへの間違ったパスを設定しようとした場合に発生します (例: "src/")。書き込みパスは、ディレクトリの構造によって異なります。書き込みパスを見つける最善の方法は、コマンド「jsx --watch」を出力し、Tab を使用して必要なディレクトリへのパスを取得するか、ターミナルの現在のフォルダーに build/ および src/ フォルダーが含まれていることを確認することです。