私は3つのES2015モジュールを持っています:store.js
、middleware-config.js
、自動生成middleware-config-settings.js
とロジックとインポートがあります。"モジュールが見つかりません"自動生成されたファイルのフローエラー
モジュールmiddleware-config-settings.js
は、アプリがnpm start
で始まる場合、webpack.config.js
から生成されます。
store.js
:
// @flow
...
import middlewareConfigs from './middleware/middleware-config';
...
middleware-config.js
:
// @flow
...
import defaultSettings from './middleware-config-settings';
...
モジュールmiddleware-config-settings.js
は、単純なJSONです:私はflow
でプロジェクトを確認
// @flow
export default {
profilingMiddlewareConfig: {
isActive: true,
},
reduxDiffStateMiddlewareConfig: {
isActive: true,
params: {
ignoredActionTypes: [],
approvedActionTypes: []
}
}
};
Iましたエラー:
./middleware-config-settings. Required module not found
まず、私はフローラインのチェックを無視しようとした:
// @flow
...
// @FlowFixMe: ignore
import defaultSettings from './middleware-config-settings';
...
middleware-config-settings.js
が存在しない場合apporachは罰金に動作すること。そうでなければ私は別の問題を抱えて:flow
実行が別のエラーで失敗しnpm start
middleware-config-settings.js
作成されたファイルと、次の後:
Error suppressing comment. Unused suppression
第二に、私は.flowconfig
で[ignore]
セクションにmiddleware-config.js
を追加してみました。しかし、その後、私はstore.js
から新しいエラーメッセージが表示されました:その後
./middleware/middleware-config. Required module not found
は、私があまりにも[ignore]
セクションにstore.js
を追加し、flow
がうまく実行されるが、私はそれが正しい方法ではないと思います。
第三のアプローチは、第二に似ている - 私はちょうどmiddleware-config.js
から// @flow
を取り除き、flow
が細かい実行されます。そしてそのアプローチもあまり良くない(すべてのモジュールはflow
にする必要があります)。
だから、私は2つの質問があります:私はそのflow
チェックからのファイルのいずれかを排除することなくエラーのないflow
実行を取得できますか
- を?
[ignore]
セクションにmiddleware-config.js
を追加すると、なぜ私はstore.js
についてエラーが発生しますか? documentationの私の理解が正しければそれは正しい動作ではありません。The [ignore] heading in a .flowconfig file tells flow to ignore files matching the specified regular expressions when type checking your code.
感謝を! 1.私はそのファイルを生成する必要があります。 2.そのファイルが存在しない場合にのみ作成され、各ユーザーは自分の値で編集できます(そして、私は本当に偽のファイルをもう1つ作成したくはありません)。 3.私がやりたいことより少し難しいです。 別の方法で解決します。 – feeeper