私はSassでExpressアプリケーションを構築しています。私は最後に.scssと.cssファイルをコンパイルして以来、プロジェクトに何も変更を加えていません。なぜ私の.scssファイルがExpressアプリケーションで見えないのですか?
コマンド:
sass sass/style.scss style.css
が、私は私のプロジェクトに取り組んで最後の時間を働いていたが、今日、私はこのエラーを取得しています:
Errno::ENOENT: No such file or directory @ rb_sysopen - sass/style.scss
Use --trace for backtrace.
繰り返しますが、私はNO NEW変更を加えましたこれは最後の仕事だったので、私は以前のgitコミットに戻ってきました。私app.jsで
は、私はこのようなnode-sass-middleware
を設定している:
var sassMiddleware = require('node-sass-middleware');
と、この:My-Website/public
で
app.use(sassMiddleware({
src: path.join(__dirname, 'public/stylesheets/sass'),
dest: path.join(__dirname, 'public/stylesheets'),
debug: true,
indentedSyntax: true,
outputStyle: 'compressed',
prefix: '/stylesheets'
}));
app.use(express.static(path.join(__dirname, 'public')));
と私のpublic
ファイル構造は次のようになります。
├── public
└── stylesheets
├── sass
└── style.scss
├── style.css
└── style.css.map
また、の私のlayout.hbs
ファイル
<link rel='stylesheet' href='/stylesheets/style.css' />
を何が起こっているか:フォルダ(私はExpressのハンドルバーのテンプレート言語を使用しています)、私は私の頭の中でこのリンクを持っていますか?
'sass/style.scss'ではなく、' stylesheets/sass/style.scss'のように見えます。 – MayorMonty
同じエラーが発生します。そして、この質問に対する答えに基づいて:http://stackoverflow.com/questions/30654312/why-node-sass-middleware-is-not-working、私はSassがコンパイルされた 'スタイルを探しているという印象を受けていました'My-Website/public/stylesheets'(ミドルウェア設定の' dest ')に.scssを置きます。 – Alya
ここでは、 'sass'コマンドと' sass'コマンドを使用してシートをコンパイルする 'sass'と' node-sass-middleware'コマンドがあります。投稿の冒頭では、 'sass'コマンドが動作していないことを参照して、エクスプレススクリプトに移行します。これは、それが動作しないことを意味します。現在の作業ディレクトリを確認し、最初のコマンドを実行するときに 'public/stylesheets /'であることを確認してください。 – MayorMonty