ありません、私は2つの異なるビューのレンダリング急行ルータとヒスイ/パグテンプレートを使用して、ファイルアップロードフォーム、から構成されたプロジェクトを持っています。のWebPACK /ガルプ/ Expressのエラー:そのようなファイルやディレクトリは
私はすべてのjavacriptファイルを1つ(backend.js
)にコンパイルし、そのbackend.js
ファイルを3つの.pugファイルとともに別のディレクトリにコンパイルしようとしています。
のWebPACKは、プロジェクトに含まれているのjsファイルをコンパイルした後、それはビルド/ backend.jsに配置します: project-after-webpack
そして最後に、ゴクゴクは、別のフォルダにあるパグテンプレートとともに、backend.js
ファイルを受け取りプロジェクト、およびmain.js
へbackend.js
をコンパイルし、この構造に配置して、HTMLファイルにすべての私のパグファイルを回す: project-after-gulp
プロジェクトの残りの部分は、ルートディレクトリにあります。
javascriptファイルの1つは、特定のhttp要求時にビューを表示する役割を果たします。これは私が困っているところです。 gulpとwebpackがなければ、私はres.render()
を使って.pugビューを問題なくレンダリングすることができます。しかし、私はgulpとwebpackを使用すると "no such file or directory"というエラーが出ます。これは、form.pug
ファイルをレンダリングしようとしています。そのファイルはform.html
になっています。
router.get('/', function list (req, res, next) { //res.render('submissions/form.pug' res.sendFile(path.join(__dirname+'build/submissions/form.html'), { submission: {}, action: 'Add' }); });
とコンソールを使用すると、ファイルが実際に存在していることがわかりますにもかかわらず、ENOENT: no such file or directory, stat '/form.html'
私に言っています。
私は、これは単なる不可能な場合.sendFile
機能を使用すると、私は欠けている何かを必要とする場合、または私のパスは、間違っているかはわかりません。どんな助けもありがたいです。
ただ、まだそのようなファイルが – Lanre
は、ソースコードの行にエラーに対応してい存在していない私に告げるエラーを取得し、これを試してみましたか?あなたはあなたの質問に完全な痕跡を提供できますか?コードが指し示されている場合、その関数でない場合は? – Pandaiolo
これは完全なエラーです: '{[エラー:ENOENT:そのようなファイルやディレクトリ、stat '/build/submissions/form.html'] errno:-2、 コード: 'ENOENT'、 syscall: 'stat '、 パス:' /build/submissions/form.html '、 公開:偽、 statusCode:404、 ステータス:404、 レスポンス:' ENOENT:そのようなファイルまたはディレクトリはありません。 '/ build/submissions /form.html \ ''} ' – Lanre