gpt4 book ai didi

node.js - gruntjs 0.4 registerHelper 已弃用,语法修复?

转载 作者:搜寻专家 更新时间:2023-11-01 00:33:45 27 4
gpt4 key购买 nike

我一直在为 grunt 0.3 运行以下任务并移至 0.4,registerHelper 已被弃用。使用新 API 实现它的正确方法是什么。

module.exports = function(grunt) {
'use strict';

var fs = require('fs');
var path = require('path');
var crypto = require('crypto');

grunt.registerTask('wpversion', 'Set the versions in scripts.php for CSS/JS', function() {
var scriptsPhp = 'src/lib/include_functions/scripts.php';

// Hash the CSS
var hashCss = grunt.helper('md5', 'dist/assets/css/main.min.css');

// Hash the JS
var hashJs = grunt.helper('md5', 'dist/assets/scripts/scripts.min.js');

// Update scripts.php to reference the new versions
var regexCss = /(wp_enqueue_style\('main_css',(\s*[^,]+,){2})\s*[^\)]+\);/;
var regexJs = /(wp_register_script\('main_js',(\s*[^,]+,){2})\s*[^,]+,\s*([^\)]+)\);/;

var content = grunt.file.read(scriptsPhp);
content = content.replace(regexCss, "\$1 '" + hashCss + "');");
content = content.replace(regexJs, "\$1 '" + hashJs + "', " + "\$3);");
grunt.file.write(scriptsPhp, content);
grunt.log.writeln('"' + scriptsPhp + '" updated with new CSS/JS versions.');
});

/**
* The 'md5' helper is a basic wrapper around crypto.createHash
*/
grunt.registerHelper('md5', function(filepath) {
var hash = crypto.createHash('md5');
hash.update(fs.readFileSync(filepath));
grunt.log.write('Versioning ' + filepath + '...').ok();
return hash.digest('hex');
});
};

最佳答案

只是让它成为一个普通的函数。如果它很大,将它放在一个单独的文件中并需要它。如果它可重用于其他任务,请将其发布为 Node 模块,以便其他任务可以使用它。

关于node.js - gruntjs 0.4 registerHelper 已弃用,语法修复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14350759/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com