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

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

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

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

gulp

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

Q&A

2回答

3301閲覧

postcss-commentをインストールしたのですが、トランスパイスの最中に下記のエラーがでて失敗します。

退会済みユーザー

退会済みユーザー

総合スコア0

CSS

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

gulp

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

0グッド

0クリップ

投稿2016/07/02 05:04

編集2022/01/12 10:55

https://teratail.com/questions/39612のつづき

npm i -D postcss-commentで、postcss-commentをインストールしたのですが、トランスパイスの最中に下記のエラーがでて失敗します。

・エラーログ
Error: [object Object] is not a PostCSS plugin

・gulpfile.js

//gulpfile.js var gulp = require('gulp'); //gulpをインポート var postcss = require('gulp-postcss'); //gulp-postcssをインポート var cssnext = require('postcss-cssnext'); //cssnextをインポート var nested = require('postcss-nested'); var reporter = require('postcss-reporter'); //stylelintだけだとレポートが出力されない為 var csswring = require('csswring'); var calc = require('postcss-calc'); var postcssimport = require('postcss-import'); var postcsscomment = require('postcss-comment'); gulp.task('css', function () { //”css”タスクを登録 var plugins = [ cssnext, //一旦空の配列を作成 nested, reporter, calc, csswring, postcssimport, postcsscomment ]; return gulp.src('./src-before/*.css') //src-before下にある.cssファイルを指定 .pipe(postcss(plugins)) //PostCSSにファイルを処理してもらう .pipe(gulp.dest('./dest-after')); //生成されたCSSをdest-after下に配置 });

どこに問題があるかご存知ですか?

下記の状態だと問題がおきないので、
var postcsscomment = require('postcss-comment');

var plugins = [
postcsscomment
];
の記述を追加すると問題が起きて、削除すると起きないのはわかっています。
インストールと追記以外にも必須作業があるということでしょうか?

//gulpfile.js var gulp = require('gulp'); //gulpをインポート var postcss = require('gulp-postcss'); //gulp-postcssをインポート var cssnext = require('postcss-cssnext'); //cssnextをインポート var nested = require('postcss-nested'); var reporter = require('postcss-reporter'); //stylelintだけだとレポートが出力されない為 var csswring = require('csswring'); var calc = require('postcss-calc'); var postcssimport = require('postcss-import'); gulp.task('css', function () { //”css”タスクを登録 var plugins = [ cssnext, //一旦空の配列を作成 nested, reporter, calc, csswring, postcssimport ]; return gulp.src('./src-before/*') //src-before下にある.cssファイルを指定 .pipe(postcss(plugins)) //PostCSSにファイルを処理してもらう .pipe(gulp.dest('./dest-after')); //生成されたCSSをdest-after下に配置 });

//以下gulp-watch
gulp.task('watch', function(){
gulp.watch('./src-before/*', ['css']);//監視したいファイルの相対パス
});

・公式サイトのHook requireという部分がわからず行えていません。
Hook requireとはgulpfile.jsのどこかに下記のソースをコピペするということでしょうか?
nodeは難しくてよくわかりません。

>>>
Hook require

require('postcss-comment/hookRequire') var postcss = require('postcss') var fs = require('fs') var file = __dirname + '/inline.css' postcss() .process( fs.readFileSync(file, 'utf8'), { from: file } ) .then(function (result) { console.log(result.css) })

Or:

var postcss = require('postcss-comment/hookRequire') var fs = require('fs') var file = __dirname + '/inline.css' postcss() .process( fs.readFileSync(file, 'utf8'), { from: file } ) .then(function (result) { console.log(result.css) })

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

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

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

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

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

kei344

2016/07/02 05:36

コードはコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「</>」ボタンを押すとコードブロックになります。
harashow1701

2016/07/02 08:37

公式サイトにリンクしてください。hook requireとか言われても知らんし
guest

回答2

0

自分勝手なクレクレ君は嫌われるだけですよ。

.pipe(postcss(plugins), { parser: require('postcss-comment') })

or

require('postcss-comment/hookRequire');

投稿2017/02/11 08:17

goodtea0223

総合スコア16

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

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

0

デバッグしてどこでエラー出てるかをまずは特定しましょ

投稿2016/07/02 05:17

harashow1701

総合スコア854

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

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

harashow1701

2016/07/02 08:38

nodeが難しくてわからないのではなく、node.jsの知識が単に無くてわからないだけです。
退会済みユーザー

退会済みユーザー

2016/10/26 09:38

マナーもないあんたに言われたくないがな
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問