1

我们在项目中第一次使用 grunt,我在 google 和 stackoverflow 上花费了大量时间,但找不到解决方案,目前我已经缩小了 JS 和 CSS 文件,但在浏览器上我想将版本添加到缩小的 JS 和CSS文件是什么production.jsproduction.css所以有什么方法可以在修改资产(js和css)文件时使用grunt或在节点中将版本添加到浏览器缓存中的文件

Concat.js

module.exports = function(grunt) {

grunt.config.set('concat', {


    dist: {
        src: ['assets/styles/style.css','assets/styles/bootstrap.css', 'assets/styles/font-awesome.css','assets/styles/jquery-ui.css'],
        dest: 'assets/concat/production.css'
    },

  js: {
        src: ['assets/js/src/jquery-2.1.3.js',


    assets/js/src/jquery-ui.js',


 'assets/js/src/bootstrap.js',

 'assets/js/src/bootstrap-switch.js',

 'assets/js/src/moment.js',

 'assets/js/src/angular.js',


 'assets/js/jquery.gritter.min.js',

 'assets/js/dependencies/elements.js',

 'assets/js/dependencies/layout.js',

  'assets/js/dependencies/init.js',

 'assets/js/dependencies/js_importer.js',

 'assets/js/dependencies/sib_common.js',

  'assets/js/angular-sanitize.min.js',

  'assets/js/angular/home.js'

],
        dest: 'assets/concat/production.js'
    }
});

索引.ejs

<html lang="en">

<script src="/concat/production.js"></script>
<head>
<link href="/concat/production.css" rel="stylesheet" />
</head>
</html>

编辑

使用filerev实现但未创建版本

module.exports = function(grunt) {

grunt.config.set('filerev', {

filerev: {
  options: {
    algorithm: 'md5',
    length: 8
  },
  files: {

    src: ['assets/concat/production.js', 'assets/concat/production.css']

  }
}

});

grunt.loadNpmTasks('grunt-filerev');

};

默认.js

module.exports = function (grunt) {




grunt.registerTask('default', 


['compileAssets', 'linkAssets','filerev' , 'watch']);



};
4

1 回答 1

0

你可以使用'grunt-cache-breaker'

npmjs/grunt-cache-breaker

于 2018-12-19T13:56:37.617 回答