获取Bower已经使用Grunt在Yeoman生成器中安装的jQuery版本

时间:2013-10-09 12:13:01

标签: gruntjs yeoman bower yeoman-generator

我正在写我的第一个Yeoman发电机。对于index.html页面,我使用本地回退来引用Google上的托管jQuery文件。我正在使用Bower来获取最新版本的jQuery。因此,目前我的jQuery引用如下所示:

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="assets/bower_components/jquery/jquery.min.js"><\/script>')</script>

这并不理想,因为每次使用此生成器时,用户都必须检查Bower获取的jQuery版本,然后使用相同的版本号更新托管链接中的版本部分。

有没有办法自动获取版本号并更新托管网址,大概是使用Grunt?

注意:我不是在寻找最新托管版本的链接,我不想指定Bower要获取哪个jQuery版本,因为我希望它在创建时是最新版本。

1 个答案:

答案 0 :(得分:1)

是的,请看grunt-replace。这是一个替换链接的示例配置:

    replace: {
        options: {
            patterns: [{
                match: '/@jQueryCDN/g',
                replacement: function() {
                    var jQconf = grunt.file.readJSON('bower_components/jquery/bower.json');
                    return '//ajax.googleapis.com/ajax/libs/jquery/' + jQconf.version + '/jquery.min.js'
                },
                expression: true
            }]
        },
        files: {
            src:  'static/index.html',
            dest: 'build/index.html'
        }
    }

然后在您想要插入路径的地方使用@jQueryCDN。 :)