文件版本控制并在dist文件中更新其名称

时间:2016-02-04 18:36:08

标签: javascript gruntjs requirejs

我努力制作我的应用程序的dist版本。我用r.js打包了我的应用程序(app正在使用requirejs)。所以我有

dir-
    -index.html
    -css
        -style.css
    -js
        main.js
    assets
        -img1.jpg
        -img2.png

现在,我想对dist文件进行版本控制,并在js,css和html中更新相应的依赖项。 使用requirejs对版本化文件进行版本控制和自动装配的合适工具是什么?

我尝试过使用npm的各种版本插件,例如

grunt-version-assets
grunt-assets-versioning
grunt-version
usemin
etc.

他们没有多少运气,有些似乎接近我需要的东西,但并不完全。

我还尝试使用grunt-filerev加速文件并替换js,css和html中的字符串。在那我也失败了,无法弄清楚如何正确替换

<script data-main="js/main" src="./lib/require.js"></script>

最好的结果就是将dist.js从dist中丢失,因为它不再需要了。任何指针,教程都受到欢迎。

1 个答案:

答案 0 :(得分:-1)

尝试这两个链接中的任何一个,它也可能有用且易于实现。 1。

cacheBust: {
    options: {
        assets: ['assets/**/*'],
        baseDir: './public/'
    },
    taskName: {
        files: [{   
            expand: true,
            cwd: 'public/',
            src: ['templates/**/*.html', 'assets/**/*']
        }]
    }
}

有关详情,请转至https://github.com/hollandben/grunt-cache-bust

2

'cache-busting': {
    requirejs: {
        replace: ['tmp/**/*.html'],
        replacement: 'MainApp',
        file: 'tmp/deploy/js/app/MainApp.min.js'
    },
    css: {
        replace: ['tmp/**/*.html'],
        replacement: 'style.css',
        file: 'tmp/deploy/css/style.css',
        cleanup: true //Remove previously generated hashed files.
    }
},

有关详情,请转至https://www.npmjs.com/package/grunt-cache-busting