博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Grunt.js 初使用
阅读量:7142 次
发布时间:2019-06-28

本文共 1532 字,大约阅读时间需要 5 分钟。

由于项目中的需求要用到 grunt.js ,了解使用之后感觉各种高端、牛逼、方便、好使呀,里面有各种插件,基本上能满足一般的项目需求了,而我们的项目中暂时只用到 grunt-contrib-less、grunt-contrib-watch 而已,还有 grunt-contrib-htmlmin、grunt-contrib-jshint 等等,更多插件请到  瞄瞄吧。

要使用 grunt.js ,则必须要配置 node.js 环境,现在配置 node 环境简单多了,直接去 下载个安装就行了,而且还自带了 npm 包管理器,也不要自己去手动安装了。

1、安装完之后,打开命令行,输入 npm install -g grunt-cli 安装 grunt;

2、新建文件夹(如 grunt-demo),在此文件夹新建 package.json 文件,文件代码如下:

1
2
3
4
5
6
7
8
9
{
    
"name"
:
"my-grunt-demo"
,
    
"version"
:
"0.1.0"
,
    
"devDependencies"
: {
        
"grunt"
:
"*"
,
        
"grunt-contrib-less"
:
"*"
,
        
"grunt-contrib-watch"
:
"*"
    
}
}

3、在命令切换到该文件夹目录下,输入 npm install 安装 package.json 里面依赖的包;

4、再新建 Gruntfile.js 文件,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
module.exports =
function
(grunt) {
 
    
grunt.initConfig({
        
less: {
            
// 编译
            
compile: {
                
files: {
                    
'assets/css/main.css'
:
'assets/css/main.less'
                
}
            
},
            
// 压缩
            
yuicompress: {
                
files: {
                    
'assets/css/main-min.css'
:
'assets/css/main.css'
                
},
                
options: {
                    
yuicompress:
true
                
}
            
}
        
},
        
watch: {
            
scripts: {
                
files: [
'assets/css/*.less'
],
                
tasks: [
'less'
]
            
}
        
}
    
});
 
    
grunt.loadNpmTasks(
'grunt-contrib-less'
);
    
grunt.loadNpmTasks(
'grunt-contrib-watch'
);
 
    
grunt.registerTask(
'default'
, [
'less'
,
'watch'
]);
 
};

5、然后就可以在 assets/css/ 目录下新建 less 文件,使用 less 语法来编写项目样式;

6、写完之后在命令行输入 grunt 运行即可生成编译后和压缩后的 css 文件了。

但是每次在 less 文件里写完之后都要执行一次命令是不是很麻烦呢?有没有可以自动化执行的?当然有!程序猿怎么能把时间浪费在这每次手动编译的时间里呢?细心的你留意到 grunt-contrib-watch 了吧?没错,这货就是用来干这事的。在命令行里输入 grunt watch 即可,然后你再编译下你的 less 文件,按保存的时候再看看命令行终端,是不是自动为你编译了?如此简单神奇。

这里记录了下简单的流程,至于具体的用法可以查看下 和它的  。

转载地址:http://vbmrl.baihongyu.com/

你可能感兴趣的文章
vue-cli解析
查看>>
python进行毫秒级计时时遇到的一个精度问题
查看>>
tweak
查看>>
Innodb索引以及查询优化的一些见解
查看>>
SSM学习系列(三) Hello Spring MVC
查看>>
教你如何直接访问php实例对象的private属性
查看>>
sass的基本使用
查看>>
chrome扩展推荐:帮你留住每一次ctrl+c --- Clipboard History 2
查看>>
ReactDOM You Should
查看>>
步步为营 - 先学会yii2给我们的5种内置行为类
查看>>
常用设计模式
查看>>
video 标签在微信浏览器的问题解决方法
查看>>
jQuery操作之效果
查看>>
轻松搞定|将PHP和Couchbase应用部署为Docker
查看>>
云计算的基本概念
查看>>
Android Google AdMob 广告接入示例
查看>>
ThinkPHP里的命名空间解析
查看>>
简洁Java之道
查看>>
运维工作钱少、事多而且杂?年轻人,你这个思想很危险吶
查看>>
Phantom.js维护者退出,项目的未来成疑
查看>>