NodeJs util.promisify 不是函数

新手上路,请多包涵

我正在尝试 promisify 一个 mysql 函数,但是当我运行它时,控制台显示此错误 util.Promisify is not a function 。这是我的代码:

 var util=			require('util');
var mysql=          require('mysql');

var conection=mysql.createConnection({
				host:'localhost',
				user:'root',
				password:'616897',
				database:'proyect'
	});

  var query = util.promisify(conection.query);

  query(data.valida_user).then((rows)=>{
	console.log(rows);
}).catch((error)=>{
	console.log(error);
})

同样的错误如果 var query = util.promisify(mysql.query);

我是新编程,但我正在努力学习。

原文由 Eleazar Ortega 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1k
1 个回答

util.promisify 是 Node 8.X 版本的一部分。但是您仍然可以为旧版本的 Node 提供一个 polyfill。

可以使用 polyfill 来处理您将在其上运行应用程序的旧版本节点服务器。它可以通过以下方式通过 npm 安装:

 npm install util.promisify

现在您可以在旧版本的 Node 上修补模块 utl

 const util = require('util');
require('util.promisify').shim();

const fs = require('fs');
const readFileAsync = util.promisify(fs.readFile);

引用自 https://grizzlybit.info/blog/nodejs-util-promisify

原文由 zubair1024 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题