2017-12-29 61 views
0
Error: ENOENT: no such file or directory, open './views/transactions/html.pug' 

私のアプリケーションをローカルで実行しても問題はありません。一度Herokuにプッシュすると上記のエラーが表示されます。ローカルでは、エクスプレスサーバーにnodemonを使用しています。私は電子メールを送信するためにいくつかのHTMLをコンパイルするためにpugを使用しています。これが問題の原因となっている機能です。pug.compileFile( './ views/transactions/html.pug'); Herokuノードエクスプレス。エラー:ENOENT:そのようなファイルやディレクトリが開いていない

pug.compileFile('./views/transactions/html.pug') 

Reactを使用して同じサーバーからスタティック/ビルドファイルを提供するノードExpressを使用します。 File Structure

私の疑惑は、私は私のnodemonがこれをやってますローカルで実行しているときのように、私は私がこれを行う方法がわからないM」、しかし、「ビュー」ディレクトリサービスを提供する必要があるということです。

これは私のserver.jsファイルenter image description hereのビューです。

答えて

0

エラーメッセージの解決方法があります。私はこの投稿about node/heroku filepathsからこれを得ました。

ローカルファイルパスが正しいファイルを指していたが、オンライン/ herokuサーバーが別のファイルパスを必要としていたという問題がありました。私はそれが価値あるもののためのファイル構造の写真を含んでいます。

function createEmailFilePath(filename) { 
    const newpath = process.env.NODE_ENV === 'production' ? 
    path.resolve('emails', 'transactions', filename) : 
    path.resolve('..', 'emails', 'transactions', filename); 
    return newpath; 
} 

enter image description here

関連する問題