Javascript 此代码中的扩展函数的用途是什么?
我正在试图弄清楚如何使用mysql promise。 下面是一些示例代码Javascript 此代码中的扩展函数的用途是什么?,javascript,mysql,node.js,promise,node-mysql,Javascript,Mysql,Node.js,Promise,Node Mysql,我正在试图弄清楚如何使用mysql promise。 下面是一些示例代码 var db = require('mysql-promise')(); db.configure({ "host": "localhost", "user": "foo", "password": "bar", "database": "db" }); db.query('UPDATE foo SET key = ?', ['value']).then(function () {
var db = require('mysql-promise')();
db.configure({
"host": "localhost",
"user": "foo",
"password": "bar",
"database": "db"
});
db.query('UPDATE foo SET key = ?', ['value']).then(function () {
return db.query('SELECT * FROM foo');
}).spread(function (rows) { //what's purpose of spread()?
console.log('Loook at all the foo', rows);
});
扩展功能的目的是什么?它到底做什么?扩展函数来自mysql promise库附带的Bluebird promises库。它打开一个承诺,该承诺必须返回一个数组,并将该数组的每个元素赋予传递给它的函数,在本例中是来自mysql数据库的行 从github上mysql promise的package.json:
"dependencies": {
"bluebird": "^2.10.2",
"mysql": "^2.10.2"
},
以下是蓝鸟项目的更多信息:
扩展函数来自mysql promise库附带的Bluebird promises库。它打开一个承诺,该承诺必须返回一个数组,并将该数组的每个元素赋予传递给它的函数,在本例中是来自mysql数据库的行 从github上mysql promise的package.json:
"dependencies": {
"bluebird": "^2.10.2",
"mysql": "^2.10.2"
},
以下是蓝鸟项目的更多信息:
.spread
是一个Bluebird(mysql promise正在使用的promise库)函数
基本上,.spread
允许您处理来自promise的返回值,即数组而不是单个值
请参阅以获取更多信息。
.spread
是一个Bluebird(mysql promise正在使用的promise库)函数
基本上,.spread
允许您处理来自promise的返回值,即数组而不是单个值
有关更多信息,请参阅。Jaromanda X是正确的,但该示例有误 spread的理想用例是回调/链接函数需要多个参数,但承诺返回单个值(我们的工作是确保它是链接函数使用的格式的参数数组),因此: 相当于(在ES6中):
Jaromanda X是正确的,这个例子是错误的 spread的理想用例是回调/链接函数需要多个参数,但承诺返回单个值(我们的工作是确保它是链接函数使用的格式的参数数组),因此: 相当于(在ES6中):
mysql承诺使用蓝鸟。。。bluebird spread的文档在示例代码的上下文中被误传,有点。。。可能有不止一个参数可用,每行一个可能(老实说不一定)mysql promise使用bluebird。。。bluebird spread的文档在示例代码的上下文中被误传,有点。。。可能有多个参数可用,每行一个参数可能(不确定是否诚实),正如所说,您也可以这样做:
Promise.resolve([1,2,3]).all()。然后(([a,b,c])=>{…})
而不是spread(function(a,b,c){…})
,您也可以这样做:Promise.resolve([1,2,3]).all()。然后([a,b,c])=>{…})
而不是spread(函数(a,b,c){…})
Promise.resolve([1,2,3]).then( ([a, b, c]) => { ...