zoukankan      html  css  js  c++  java
  • web项目构建

      web项目构建很有必要,但是作为小作坊开发,一直也不想去多花一点精力去折腾,今天终于鼓起勇气去啃了啃Grunt。光看Grunt的官方文档有点枯燥,下面是Snandy写的一些列实际的例子,这个就比较直观了,由于比较懒,喜欢拿来主义,摘抄在这里哦。

        使用GruntJS构建Web程序 (1)

        使用GruntJS构建Web程序 (2)

        使用GruntJS构建Web程序 (3)

      下面简单的描述过程:

      1、安装node

      2、安装grunt-cli

    #-g 全局安装
    npm install -g grunt-cli

      3、安装grunt及插件

    #进入到某项目根目录,使用命令
    npm install grunt --save-dev

      (4——7JavaScript资源的合并、压缩)

      4、编辑项目

    #项目目录
    root
        |-src
            |-ajax.js
            |-selector.js
        |-package.json
        |-Gruntfile.js

      5、编辑pageage.json

    {
      "name": "Bejs",
      "version": "0.1.0",
      "devDependencies": {
        "grunt": "~0.4.0",
        "grunt-contrib-jshint": "~0.1.1",
        "grunt-contrib-uglify": "~0.1.2",
        "grunt-contrib-concat": "~0.1.1"
      }
    }
    #grunt-contrib-jshint js语法检查
    #grunt-contrib-uglify 压缩,采用UglifyJS
    #grunt-contrib-concat 合并文件
    #执行安装
    npm install

      6、编辑Gruntfile.js

    /**
     * 合并src下的文件(ajax.js/selector.js)为domop.js
     * 压缩domop.js为domop.min.js
     * 这两个文件都放在dest目录下
     */
    module.exports = function(grunt) {
        // 配置
        grunt.initConfig({
            pkg : grunt.file.readJSON('package.json'),
            concat : {
                domop : {
                    src: ['src/ajax.js', 'src/selector.js'],
                    dest: 'dest/domop.js'
                }
            },
            uglify : {
                options : {
                    banner : '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */
    '
                },
                build : {
                    src : 'dest/domop.js',
                    dest : 'dest/domop.min.js'
                }
            }
        });
        // 载入concat和uglify插件,分别对于合并和压缩
        grunt.loadNpmTasks('grunt-contrib-concat');
        grunt.loadNpmTasks('grunt-contrib-uglify');
        // 注册任务
        grunt.registerTask('default', ['concat', 'uglify']);
    }; 

      7、执行grunt任务

    grunt

      (8——11css资源的合并、压缩)

      8、编辑项目

      同上

      9、编辑pageage.json

    {
      "name": "BeJS",
      "version": "0.1.0",
      "devDependencies": {
        "grunt": "~0.4.0",
        "grunt-contrib-concat": "~0.1.1",
        "grunt-css":   ">0.0.0"
      }
    }

      10、编辑Gruntfile.js

    module.exports = function(grunt) {
        // 配置
        grunt.initConfig({
            pkg : grunt.file.readJSON('package.json'),
            concat : {
                css : {
                    src: ['src/asset/*.css'],
                    dest: 'dest/asset/all.css'
                }
            },
            cssmin: {
                css: {
                    src: 'dest/asset/all.css',
                    dest: 'dest/asset/all-min.css'
                }
            }
        });
        // 载入concat和css插件,分别对于合并和压缩
        grunt.loadNpmTasks('grunt-contrib-concat');
        grunt.loadNpmTasks('grunt-css');
        // 默认任务
        grunt.registerTask('default', ['concat', 'cssmin']);
    }; 

      11、执行grunt任务

      同上

    npm install

  • 相关阅读:
    Java8 Lambda表达式详解手册及实例
    成功,侥幸,以小博大?永远离不开的墨菲定律
    Java8 Stream性能如何及评测工具推荐
    康威定律,作为架构师还不会灵活运用?
    Java8 Stream新特性详解及实战
    Java SPI机制实战详解及源码分析
    jQuery是什么
    庞氏骗局
    excel中VBA的使用
    wcf ServiceContract
  • 原文地址:https://www.cnblogs.com/ccdc/p/3957936.html
Copyright © 2011-2022 走看看