grunt-contrib-stylus 项目教程
1. 项目的目录结构及介绍
grunt-contrib-stylus/
├── Gruntfile.js
├── LICENSE-MIT
├── README.md
├── package.json
├── tasks/
│ └── stylus.js
└── test/
├── fixtures/
│ ├── basic.styl
│ └── errors.styl
├── expected/
│ ├── basic.css
│ └── errors.css
└── stylus_test.js
- Gruntfile.js: 项目的配置文件,定义了如何运行任务。
- LICENSE-MIT: 项目的许可证文件。
- README.md: 项目的介绍和使用说明。
- package.json: 项目的依赖和元数据。
- tasks/: 包含项目的核心任务文件
stylus.js
。 - test/: 包含项目的测试文件,包括测试用例和预期输出。
2. 项目的启动文件介绍
项目的启动文件是 Gruntfile.js
。这个文件定义了如何配置和运行 Grunt 任务。以下是 Gruntfile.js
的基本结构:
module.exports = function(grunt) {
grunt.initConfig({
stylus: {
compile: {
files: {
'path/to/output.css': 'path/to/input.styl'
}
}
}
});
grunt.loadNpmTasks('grunt-contrib-stylus');
grunt.registerTask('default', ['stylus']);
};
- grunt.initConfig: 初始化配置,定义了
stylus
任务的编译选项。 - grunt.loadNpmTasks: 加载
grunt-contrib-stylus
插件。 - grunt.registerTask: 注册默认任务,当运行
grunt
命令时,会执行stylus
任务。
3. 项目的配置文件介绍
项目的配置文件是 Gruntfile.js
。这个文件包含了项目的所有配置选项。以下是一些常见的配置选项:
grunt.initConfig({
stylus: {
compile: {
options: {
compress: false, // 是否压缩输出
paths: ['path/to/import'] // 导入路径
},
files: {
'path/to/output.css': 'path/to/input.styl' // 输入和输出文件
}
}
}
});
- compress: 是否压缩输出 CSS 文件。
- paths: 定义导入路径,允许在 Stylus 文件中使用
@import
语句。 - files: 定义输入和输出文件的路径。
通过这些配置,可以灵活地定制 grunt-contrib-stylus
插件的行为,以满足不同的项目需求。