博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
前端开发利器-grunt
阅读量:6076 次
发布时间:2019-06-20

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

hot3.png

最近看了下angular,顺便就看到了前端自动化构建工具grunt Grunt和 Grunt 插件是通过  安装并管理的,npm是  的包管理器。Grunt 0.4.x 必须配合Node.js >= 0.8.0 版本使用。

  • 安装nodejs
brew install node

如果已经安装了nodejs,请确保当前环境中所安装的  已经是最新版本

sudo npm update -g npm

注:npm是nodejs自带的包管理工具(类似于maven),不需要再另行安装了

  • 安装grunt
sudo npm install -g grunt-cli

注:上述命令执行完后,grunt 命令就被加入到你的系统路径中了,以后就可以在任何目录下执行此命令了。注意,安装grunt-cli并不等于安装了 Grunt!Grunt CLI的任务很简单:调用与Gruntfile在同一目录中 Grunt。这样带来的好处是,允许你在同一个系统上同时安装多个版本的 Grunt。

  • 使用grunt
    • 新建文件夹, 如 grunt
    • 进入文件夹执行
      npm init

Paste_Image.png 然后可以在文件夹中看到一个package.json,内容如下:

{  "name": "test",  "version": "1.0.0",  "description": "",  "main": "index.js",  "scripts": {    "test": "echo \"Error: no test specified\" && exit 1"  },  "author": "",  "license": "ISC"}

注:name不能为grunt, 否则会报错

  • 安装grunt插件
npm install 
--save-dev

此命令不光安装了<module>,还会自动将其添加到devDependencies配置段中,如下:

{  "name": "test",  "version": "1.0.0",  "description": "",  "main": "index.js",  "scripts": {      "test": "echo \"Error: no test specified\" && exit 1"  },  "author": "",  "license": "ISC",  "devDependencies": {      "grunt-test": "file:grunt"  }}
npm install grunt --save-dev  #安装Grunt最新版本到项目目录中,并将其添加到devDependencies内npm install grunt-contrib-jshint --save-dev  #安装 JSHint 任务模块
  • 新建Gruntfile.js文件,和package.json都位于项目根目录下
module.exports = function(grunt) {  // Project configuration.  grunt.initConfig({    pkg: grunt.file.readJSON('package.json'),    uglify: {      options: {        banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'      },      build: {        src: 'src/<%= pkg.name %>.js',        dest: 'build/<%= pkg.name %>.min.js'      }    }  });  // 加载包含 "uglify" 任务的插件。  grunt.loadNpmTasks('grunt-contrib-uglify');  // 默认被执行的任务列表。  grunt.registerTask('default', ['uglify']);};

以上是使用压缩插件压缩和混淆js

  • 运行grunt
grunt  #在根目录下执行

转载于:https://my.oschina.net/jarvan4dev/blog/685781

你可能感兴趣的文章
Android--RecyclerView的封装使用
查看>>
浅谈ITIL
查看>>
高可用与负载均衡(3)之七层负载均衡的概念
查看>>
问题记录:EntityFramework 一对一关系映射
查看>>
微信上可以借钱啦!据说仅部分用户能看到
查看>>
全文检索(elasticsearch入门)
查看>>
Go目录
查看>>
关于跳板机穿透的文章 (未验证)
查看>>
[GitHub] GitHub Repositories
查看>>
怎样打造一个分布式数据库——rocksDB, raft, mvcc,本质上是为了解决跨数据中心的复制...
查看>>
AngularJs - Javascript MVC 框架
查看>>
ASP.Net数据库如何存取图片
查看>>
云计算学习(5-1)云平台产品介绍-华为的FusionCloud产品
查看>>
{{ }} 和ng-bind
查看>>
关于Task的一点思考和建议
查看>>
微信小程序开发及相关设置小结
查看>>
K-means算法原理
查看>>
cesium可视化空间数据1
查看>>
为 .NET Core 设计一个 3D 图形渲染库
查看>>
oracle隐含参数的查看与修改
查看>>