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

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

ただいまの
回答率

89.10%

なぜかgulpStylelintが反応しません

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 87

fuhixx

score 14

反応しなく、エラーなども出力されません。無視されている感じです。

関係ないかもしれませんが、試したことは以下です
・インストールし直し(Node.js、gulpのプラグイン)
・キャッシュクリア
この記事の方法を試す−1
この記事の方法を試す−2

・また、この記事の方法で、npmscriptsで実際に処理を成功することはできました。なので、どのような処理になるのかは確認できています。
ですが、どうしてもgulpfileで実行したいです。ややこしいからです。

該当部分は以下です↓

task('sass', function () {
  return (
    src(paths.cssSrc)
      // .pipe(cssbeautify(cssoptions))
      .pipe(gulpStylelint({
        fix: true
      }))
      .pipe(
        plumber({
          errorHandler: notify.onError({
          title: "sass Error!", 
          message: "<%= error.message %>",
          sound: 'Glass',})
        })
      )
      // glob追加
      .pipe(glob())
      // 追加終了
      .pipe(sass({
        // Minifyするなら'compressed'
        outputStyle: 'expanded'
      }))
      .pipe(autoprefixer())
      .pipe(dest(paths.cssDist))
      // notifyでコンパイル成功通知
      .pipe(
        notify({
        title: 'Task running Gulp',
        message: 'sass file compiled.',
        sound: 'Tink',})
      )
      // notifyでコンパイル成功通知 終了
  );
});

全体のgulpfile.jsは以下です↓

const gulp    = require('gulp');
const notify  = require("gulp-notify");
const plumber = require("gulp-plumber");
const sass    = require('gulp-sass');
// glob追加
const glob = require("gulp-sass-glob");
// glob追加終了
// beautify 追加
const htmlbeautify = require("gulp-html-beautify");
// const cssbeautify = require('gulp-cssbeautify');
// beautify 追加終了
// stylelint 追加
const stylelint = require('stylelint');
const gulpStylelint = require('gulp-stylelint');
// stylelint 追加終了
// const pug     = require('gulp-pug');
const autoprefixer = require('gulp-autoprefixer');
const uglify  = require('gulp-uglify');
const browserSync = require('browser-sync');

//setting : paths
const paths = {
  'root'    : './dist/',
  'pug'     : './src/pug/**/*.pug',
  'html'    : './dist/**/*.html',
  'cssSrc'  : './src/scss/**/*.scss',
  'cssDist'   : './dist/css/',
  'jsSrc' : './src/js/**/*.js',
  'jsDist': './dist/js/'
}

// setting : htmlbeautify
const htmloptions = {
  indent_char: '',
  indent_size: 1,
  unformatted: ['textarea', 'p', 'pre', 'span', 'a', 'h1', 'h2', 'h3'],
  indent_with_tabs: true,
  max_preserve_newlines: 0,
  wrap_attributes: false,
  wrap_attributes_indent_size: 0,
}
// setting : cssbeautify
// const cssoptions = {
//   indent_char: '',
//   indent_size: 1,
//   max_preserve_newlines: 0,
//   wrap_attributes: false,
//   wrap_attributes_indent_size: 0,
// }

//gulpコマンドの省略
const { watch, series, task, src, dest, parallel } = require('gulp');

//HTML
task('html', function () {
  return (
    src(paths.html)
      // .pipe(
      //   plumber({
      //     errorHandler: notify.onError({
      //     title: "html Error!", 
      //     message: "<%= error.message %>",
      //     sound: 'Glass',})
      //   })
      // )
      .pipe(htmlbeautify(htmloptions))
      .pipe(dest(paths.root))
      // .pipe(
      //   notify({
      //   title: 'Task running Gulp',
      //   message: 'html file compiled.',
      //   sound: 'Tink',})
      // )
  );
});

//Sass
task('sass', function () {
  return (
    src(paths.cssSrc)
      // .pipe(cssbeautify(cssoptions))
      .pipe(gulpStylelint({
        fix: true
      }))
      .pipe(
        plumber({
          errorHandler: notify.onError({
          title: "sass Error!", 
          message: "<%= error.message %>",
          sound: 'Glass',})
        })
      )
      // glob追加
      .pipe(glob())
      // 追加終了
      .pipe(sass({
        // Minifyするなら'compressed'
        outputStyle: 'expanded'
      }))
      .pipe(autoprefixer())
      .pipe(dest(paths.cssDist))
      // notifyでコンパイル成功通知
      .pipe(
        notify({
        title: 'Task running Gulp',
        message: 'sass file compiled.',
        sound: 'Tink',})
      )
      // notifyでコンパイル成功通知 終了
  );
});

//JS Compress
task('js', function () {
  return (
    src(paths.jsSrc)
      .pipe(plumber())
      .pipe(uglify())
      .pipe(dest(paths.jsDist))
  );
});

// browser-sync
task('browser-sync', () => {
  return browserSync.init({
      server: {
          baseDir: paths.root
      },
      port: 8080,
      reloadOnRestart: true
  });
});

// browser-sync reload
task('reload', (done) => {
  browserSync.reload();
  done();
});

//watch
task('watch', (done) => {
  watch([paths.html], series('html', 'reload'));
  watch([paths.cssSrc], series('sass', 'reload'));
  watch([paths.jsSrc], series('js', 'reload'));
  done();
});
task('default', parallel('watch', 'browser-sync'));

どうかよろしくお願いいたします。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

check解決した方法

0

>>・また、この記事の方法で、npmscriptsで実際に処理を成功することはできました。なので、どのような処理になるのかは確認できています。
ですが、どうしてもgulpfileで実行したいです。ややこしいからです。

stylelintが反応していてnpmに結果が出力されており、整形されないのはPretiierがないからでした。
「stylelintの処理がscssの整形もしてくれるもの」だと思ってました。(先ほどの記事は整形されたので)すみません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

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

  • ただいまの回答率 89.10%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる