質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Sass

Sassは、プログラミング風のコードでCSSを生成できるスタイルシート言語です。 scss ファイルを、変換(コンパイル)してCSSファイルを作成します。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

gulp

gulpは、Node.jsをベースとしたタスク自動化ツールの一つ。ストリームでファイルを処理することが特徴です。CSSプリプロセッサの使用時のコンパイルや、CSS・JavaScriptファイルの圧縮・結合などを自動的に行うことができます。

Q&A

解決済

1回答

1278閲覧

gulp-sass + browsersync がたまにうまくいかない

negitama_beef

総合スコア12

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Sass

Sassは、プログラミング風のコードでCSSを生成できるスタイルシート言語です。 scss ファイルを、変換(コンパイル)してCSSファイルを作成します。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

gulp

gulpは、Node.jsをベースとしたタスク自動化ツールの一つ。ストリームでファイルを処理することが特徴です。CSSプリプロセッサの使用時のコンパイルや、CSS・JavaScriptファイルの圧縮・結合などを自動的に行うことができます。

0グッド

0クリップ

投稿2019/08/03 07:14

編集2019/08/03 07:18

gulp-sassとbrowsersyncを利用して、scssの自動コンパイルとライブプレビューができるようにgulpを導入しましたが、SCSSの変更が反映されない時があります……

毎回反映されないわけではありません。反映されない条件として、style.scssでimportしている先のscssファイルの内容を変更した時です。

新たに「background-color: #ccc」などを追加すると反映されるのですが、その後に「background-color: #111」などを、すでにあるものに対して、値だけ変更すると反映されません。

常に反映されるように修正したいです。。

gulpfile.jsの中身

js

1const PATH = "html/"; 2 3const gulp = require('gulp') 4const sass = require('gulp-sass') 5const postcss = require('gulp-postcss') 6const flexBugsFixes = require('postcss-flexbugs-fixes') 7const autoprefixer = require('autoprefixer') 8const cssWring = require('cssWring') 9const cssDeclarationSorter = require('css-declaration-sorter') 10const mqpacker = require("css-mqpacker") 11const browsersync = require("browser-sync").create() 12 13const postcssOption = [ 14 flexBugsFixes, 15 autoprefixer(autoprefixerOption), 16 cssDeclarationSorter({order: 'smacss'}), 17 mqpacker() 18] 19 20gulp.task('sass', () => { 21 return gulp.src(PATH + 'src/assets/sass/*.scss') 22 .pipe(sourcemaps.init()) 23 .pipe(sass({outputStyle: 'expanded'})) 24 .pipe(postcss(postcssOption)) 25 .pipe(sourcemaps.write('.')) 26 .pipe(gulp.dest(PATH + 'dist/assets/css/')) 27}) 28 29// サーバーを立ち上げる 30gulp.task('build', (done) => { 31 browsersync.init({ 32 server: { baseDir: PATH + "dist/" }, 33 port: 4001, 34 directoryListing: true 35 }); 36 done(); 37}) 38 39// ブラウザをリロード 40gulp.task('reload', (done) => { 41 browsersync.reload(); 42 done(); 43}); 44 45// ファイルを監視 46gulp.task('watch', (done) => { 47 gulp.watch(PATH + 'src/assets/sass/**/*.scss', gulp.series("sass")); 48 gulp.watch(PATH + "dist/**/*.css", gulp.task('reload')); 49 done(); 50}) 51 52// タスクの実行 53gulp.task('default', gulp.series('sass','build','watch', () => { 54 console.log('Default all task done!'); 55}))

style.scssの中身

scss

1@charset "UTF-8"; 2@import "object/project/_index";

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

私も過去に同じ経験をしたことがありましたので、知っている範囲で回答いたします。

加筆したコードが以下であった場合

CSS

1background-color: #ccc;

これを

CSS

1background-color: #ddd;

これに変更しても、ブラウザ上の見た目が変わらないということですよね。
では、以下はどうでしょう?

CSS

1background-color: #dddddd;

ちゃんと適用されましたか?
されたのであれば、ブラウザ上のキャッシュが自動的に保存されており、文字数の変更がなければファイルの再読み込みをしていない可能性があります。

ご自身のブラウザ環境でキャッシュを保存しない方法などをネットで検索し、対応してみてください。
きっと改善するかと思います。 gulpfileに間違いはないと思いますので安心してください。

投稿2019/08/03 13:17

satsh12st

総合スコア25

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

negitama_beef

2019/08/07 15:01

例に出していただいたとおりでした…! 丁寧に教えてくださってありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問