Grunt - 安装


本章提供了如何在系统上安装 Grunt 的分步过程。

Grunt 的系统要求

  • 操作系统- 跨平台

  • 浏览器支持- IE (Internet Explorer 8+)、Firefox、Google Chrome、Safari、Opera

安装Grunt

步骤 1 - 我们需要 NodeJ 来运行 Grunt。要下载 NodeJs,请打开链接https://nodejs.org/en/,您将看到如下所示的屏幕 -

Grunt安装

下载zip 文件的最新功能版本。

步骤 2 - 接下来,运行安装程序以在计算机上安装NodeJ 。

步骤 3 - 接下来,您需要设置环境变量

路径用户变量

  • 右键单击我的电脑
  • 选择属性
  • 接下来,选择“高级”选项卡并单击“环境变量”
Grunt安装
  • 在环境变量窗口下,双击PATH,如屏幕所示。

Grunt安装
  • 您将看到一个编辑用户变量窗口,如图所示。在变量值字段中添加 NodeJs 文件夹路径为C:\Program Files\nodejs\node_modules\npm。如果已经为其他文件设置了路径,则需要在其后添加分号(;)并添加 NodeJs 路径,如下所示 -

Grunt安装

最后,单击“确定”按钮。

系统变量

  • 在“系统变量”下,双击“路径”,如下图所示。

Grunt安装
  • 您将看到一个编辑系统变量窗口,如图所示。在变量值字段中添加 NodeJs 文件夹路径为C:\Program Files\nodejs\并单击确定,如下所示 -

Grunt安装

步骤 4 - 要在系统上安装 grunt,您需要全局安装 Grunt 的命令行界面(CLI),如下所示 -

npm install -g grunt-cli

运行上述命令会将grunt命令放入您的系统路径中,这使得它可以从任何目录运行。

安装grunt-cli不会安装 Grunt 任务运行程序。grunt-cli的作用是运行已安装在Gruntfile旁边的 Grunt 版本。它允许一台机器同时安装多个版本的 Grunt。

步骤 5 - 现在,我们将创建配置文件以运行 Grunt。

包.json

package.json文件位于项目的根目录中,位于Gruntfile旁边每当您在package.json所在的文件夹中运行命令npm install时, package.json用于正确运行每个列出的依赖项。

可以通过在命令提示符中键入以下命令来创建基本的package.json -

npm init

基本的package.json文件如下所示 -

{
   "name": "tutorialspoint",
   "version": "0.1.0",
   "devDependencies": {
      "grunt-contrib-jshint": "~0.10.0",
      "grunt-contrib-nodeunit": "~0.4.1",
      "grunt-contrib-uglify": "~0.5.0"
   }
}

您可以通过以下命令将 Grunt 和 gruntplugins 添加到现有的pacakge.json文件中 -

npm install <module> --save-dev

上述命令中,<module>代表要安装到本地的模块。上面的命令还会自动将 <module> 添加到devDependencies中 。

例如,以下命令将安装最新版本的Grunt并将其添加到您的devDependency中-

npm install grunt --save-dev

Gruntfile.js

Gruntfile.js文件用于定义 Grunt 的配置这是我们的设置将被写入的地方。基本的Gruntfile.js文件如下所示 -

// our wrapper function (required by grunt and its plugins)
// all configuration goes inside this function
module.exports = function(grunt) {
   // CONFIGURE GRUNT
   grunt.initConfig({
      // get the configuration info from package.json file
      // this way we can use things like name and version (pkg.name)
      pkg: grunt.file.readJSON('package.json'),

      // all of our configuration goes here
      uglify: {
         // uglify task configuration
         options: {},
         build: {}
      }
   });

   // log something
   grunt.log.write('Hello world! Welcome to Tutorialspoint!!\n');

   // Load the plugin that provides the "uglify" task.
   grunt.loadNpmTasks('grunt-contrib-uglify');

   // Default task(s).
   grunt.registerTask('default', ['uglify']);
};