npm - 使用 gulp 获取最新的软件包版本
问题描述
我正在尝试编写一个运行 npm 命令的 gulp 任务npm view [package_name] version
。之后,我需要获取命令的结果并对数字进行一些更改。
我尝试使用“gulp-exec”和“gulp-run”包。他们都在运行将最新包版本打印到控制台的命令,但在回调中无法访问。
想问如何运行 npm 命令并使用 gulp 将其结果写入变量?有没有办法运行控制台的状态,以便我可以解析最后一行?
干杯
解决方案
您可以使用 Node 的 child_process 模块:
// Gulp 4, but will be almost same in Gulp 3
const {series} = require('gulp');
const {exec} = require('child_process');
const version = (cb) => {
exec('npm view gulp version', (err, stdout, stderr) => {
const npmOutput = stdout.trim();
console.log(npmOutput);
cb();
});
};
exports.default = series(
version
);
推荐阅读
- php - 在 if 条件下隐藏块
- python - 包 'mysql-community-client-plugins' 没有安装候选
- amazon-web-services - 使用 lambda@edge 和 cloudfront 向机器人显示基于设备的正确预渲染数据
- extjs - CSP(内容安全策略)Ext.js 4.2 问题
- reactjs - 如何使用 jest 在同一个函数中模拟两个不同的日期?
- c - 我是否需要提供 x86-64archetecture 设备树 blob 来调试网络以太网驱动程序4 一个设备。我可以使用我的主机与主机相同的 DTB 文件吗
- python - 删除数据后重置类属性的智能方法
- javascript - Scalajs, js.Dictionary 不一致的行为
- laravel - Laravel 8 - 从 api json 响应中获取值
- python - 如何评估运行神经网络模型所需的 GPU 内存?