0

基本的な前処理ワークフローを導入したいと考えています。次のようなディレクトリ構造を設定しました。

- website-root
- - index.html
- - css
- - pre-processing
- - - Gruntfile.js
- - - package.json
- - - sass
- - - - test.scss

将来的に高度なビルド アクションが必要になるため、Grunt を使用しています。ミックスインなどを使用したいので、コンパスも使用しています。

今のところやりたいことは、web サイトのルートにある css フォルダー内の「test.css」ファイルに「test.scss」をコンパイルするための監視タスクを設定することです。ただし、何を試しても、コンソールに「compass watch」と入力してから「test.scss」ファイルの内容を変更すると、「test.css」ファイルは常に新しいフォルダーにコンパイルされます。 「前処理」フォルダー内の「スタイルシート」と呼ばれます。

Gruntfile.js の内容は次のとおりです。

module.exports = function (grunt) {
    'use strict';
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),


        compass: {
            dev: {
                options: {
                    sassDir: 'scss/',
                    cssDir: '/css/',
                    relativeAssets: true
                }
            }
        },
        watch: {
            sass: {
                files: ['scss/{,*/}*.{scss,sass}'],
                tasks: ['compass:dev']
            }
        }

    });
    grunt.loadNpmTasks('grunt-contrib-compass');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.registerTask('default', ['compass:dev']);
}

package.json ファイルには次のものが含まれます。

{
  "name": "Test",
  "version": "0.0.1",
  "devDependencies": {
    "grunt": "^0.4.5",
    "grunt-contrib-compass": "^1.0.1"
  }
}

したがって、cssDirGruntfile.js のオプションは影響がないようです。

なぜこれが起こっているのか誰にも示唆できますか?私は完全な前処理の初心者なので、明らかな何かが欠けている可能性があります!

ありがとう。

4

1 に答える 1

0

'compass watch' と入力すると、コンパスを直接実行しています。あなたはうなり声を使ってこれを機能させようとしています。「grunt watch」と入力する必要があります。

于 2014-09-16T02:39:52.197 に答える