problems with the values of the promise Promise { value }
up vote
0
down vote
favorite
I'm exporting a function where it returns the value of a query in mysql, when I do the path of the Json and the values that I assign from the function appear as Promise {value} (example Promise {61}), and I do not know how to fix the value of the promise.
query.js
const mysql = require('mysql2/promise');
const vertodo = async function(req){
const connection = await mysql.createConnection({
host: '192.168.0.222',
port: 3306,
user: 'root',
database: 'project',
password : '123456789'
});
return [rows, fields] = await connection.query('Select COUNT(*) total from table1 where id=' +req.id);
connection.end();
}
module.exports.vertodo = vertodo;
index.js
const data_mysql = require("./query")
// value jsonObj
// [{ id: 1,
// name: 'XTRA',
// proceso: 0
// },
// { id: 2,
// name: 'Maq',
// proceso: 0
// }]
for (var i = 0; i < jsonObj.length; i++) {
//jsonObj[i].proceso = 0;
jsonObj[i].procesa = data_mysql.vertodo(jsonObj[i]).then( rows =>{
return rows[0][0].total
})
// jsonObj[i].proceso = Promise { 61 } , Promise { 33 };
}
setTimeout(function(){
for (var i = 0; i < jsonObj.length; i++) {
console.log(jsonObj[i].procesa); // Promise { 61}, Promise { 33 }
}
}, 3000);
I do not know how I can solve it, thanks
javascript node.js promise mysql2
add a comment |
up vote
0
down vote
favorite
I'm exporting a function where it returns the value of a query in mysql, when I do the path of the Json and the values that I assign from the function appear as Promise {value} (example Promise {61}), and I do not know how to fix the value of the promise.
query.js
const mysql = require('mysql2/promise');
const vertodo = async function(req){
const connection = await mysql.createConnection({
host: '192.168.0.222',
port: 3306,
user: 'root',
database: 'project',
password : '123456789'
});
return [rows, fields] = await connection.query('Select COUNT(*) total from table1 where id=' +req.id);
connection.end();
}
module.exports.vertodo = vertodo;
index.js
const data_mysql = require("./query")
// value jsonObj
// [{ id: 1,
// name: 'XTRA',
// proceso: 0
// },
// { id: 2,
// name: 'Maq',
// proceso: 0
// }]
for (var i = 0; i < jsonObj.length; i++) {
//jsonObj[i].proceso = 0;
jsonObj[i].procesa = data_mysql.vertodo(jsonObj[i]).then( rows =>{
return rows[0][0].total
})
// jsonObj[i].proceso = Promise { 61 } , Promise { 33 };
}
setTimeout(function(){
for (var i = 0; i < jsonObj.length; i++) {
console.log(jsonObj[i].procesa); // Promise { 61}, Promise { 33 }
}
}, 3000);
I do not know how I can solve it, thanks
javascript node.js promise mysql2
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I'm exporting a function where it returns the value of a query in mysql, when I do the path of the Json and the values that I assign from the function appear as Promise {value} (example Promise {61}), and I do not know how to fix the value of the promise.
query.js
const mysql = require('mysql2/promise');
const vertodo = async function(req){
const connection = await mysql.createConnection({
host: '192.168.0.222',
port: 3306,
user: 'root',
database: 'project',
password : '123456789'
});
return [rows, fields] = await connection.query('Select COUNT(*) total from table1 where id=' +req.id);
connection.end();
}
module.exports.vertodo = vertodo;
index.js
const data_mysql = require("./query")
// value jsonObj
// [{ id: 1,
// name: 'XTRA',
// proceso: 0
// },
// { id: 2,
// name: 'Maq',
// proceso: 0
// }]
for (var i = 0; i < jsonObj.length; i++) {
//jsonObj[i].proceso = 0;
jsonObj[i].procesa = data_mysql.vertodo(jsonObj[i]).then( rows =>{
return rows[0][0].total
})
// jsonObj[i].proceso = Promise { 61 } , Promise { 33 };
}
setTimeout(function(){
for (var i = 0; i < jsonObj.length; i++) {
console.log(jsonObj[i].procesa); // Promise { 61}, Promise { 33 }
}
}, 3000);
I do not know how I can solve it, thanks
javascript node.js promise mysql2
I'm exporting a function where it returns the value of a query in mysql, when I do the path of the Json and the values that I assign from the function appear as Promise {value} (example Promise {61}), and I do not know how to fix the value of the promise.
query.js
const mysql = require('mysql2/promise');
const vertodo = async function(req){
const connection = await mysql.createConnection({
host: '192.168.0.222',
port: 3306,
user: 'root',
database: 'project',
password : '123456789'
});
return [rows, fields] = await connection.query('Select COUNT(*) total from table1 where id=' +req.id);
connection.end();
}
module.exports.vertodo = vertodo;
index.js
const data_mysql = require("./query")
// value jsonObj
// [{ id: 1,
// name: 'XTRA',
// proceso: 0
// },
// { id: 2,
// name: 'Maq',
// proceso: 0
// }]
for (var i = 0; i < jsonObj.length; i++) {
//jsonObj[i].proceso = 0;
jsonObj[i].procesa = data_mysql.vertodo(jsonObj[i]).then( rows =>{
return rows[0][0].total
})
// jsonObj[i].proceso = Promise { 61 } , Promise { 33 };
}
setTimeout(function(){
for (var i = 0; i < jsonObj.length; i++) {
console.log(jsonObj[i].procesa); // Promise { 61}, Promise { 33 }
}
}, 3000);
I do not know how I can solve it, thanks
javascript node.js promise mysql2
javascript node.js promise mysql2
asked Nov 22 at 17:21
user10597291
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
up vote
0
down vote
Your function "vertodo" returns a promise. You need to wait for the promise to resolve with the query response data. The easiest way to do this is to use the async/await syntax. See below.
index.js
const data_mysql = require("./query")
runQuery()
async function runQuery() {
for (var i = 0; i < jsonObj.length; i++) {
//jsonObj[i].proceso = 0;
queryResponse = await data_mysql.vertodo(jsonObj[i])
// process queryResponse
}
}
add a comment |
up vote
0
down vote
I don't fully understand what you want to do, but I assume that you want to run those queries in loop and wait until all finish and then log results.
If those queries need to be run in sequence.
async function runQueries() {
for (const item of jsonObj) {
item.procesa = await data_mysql.vertodo(item);
}
}
runQueries.then(function () {
jsonObj.forEach(function (item) {
console.log(item.procesa);
});
});
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53435780%2fproblems-with-the-values-of-the-promise-promise-value%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
Your function "vertodo" returns a promise. You need to wait for the promise to resolve with the query response data. The easiest way to do this is to use the async/await syntax. See below.
index.js
const data_mysql = require("./query")
runQuery()
async function runQuery() {
for (var i = 0; i < jsonObj.length; i++) {
//jsonObj[i].proceso = 0;
queryResponse = await data_mysql.vertodo(jsonObj[i])
// process queryResponse
}
}
add a comment |
up vote
0
down vote
Your function "vertodo" returns a promise. You need to wait for the promise to resolve with the query response data. The easiest way to do this is to use the async/await syntax. See below.
index.js
const data_mysql = require("./query")
runQuery()
async function runQuery() {
for (var i = 0; i < jsonObj.length; i++) {
//jsonObj[i].proceso = 0;
queryResponse = await data_mysql.vertodo(jsonObj[i])
// process queryResponse
}
}
add a comment |
up vote
0
down vote
up vote
0
down vote
Your function "vertodo" returns a promise. You need to wait for the promise to resolve with the query response data. The easiest way to do this is to use the async/await syntax. See below.
index.js
const data_mysql = require("./query")
runQuery()
async function runQuery() {
for (var i = 0; i < jsonObj.length; i++) {
//jsonObj[i].proceso = 0;
queryResponse = await data_mysql.vertodo(jsonObj[i])
// process queryResponse
}
}
Your function "vertodo" returns a promise. You need to wait for the promise to resolve with the query response data. The easiest way to do this is to use the async/await syntax. See below.
index.js
const data_mysql = require("./query")
runQuery()
async function runQuery() {
for (var i = 0; i < jsonObj.length; i++) {
//jsonObj[i].proceso = 0;
queryResponse = await data_mysql.vertodo(jsonObj[i])
// process queryResponse
}
}
answered Nov 22 at 18:08
FakeFootball
11
11
add a comment |
add a comment |
up vote
0
down vote
I don't fully understand what you want to do, but I assume that you want to run those queries in loop and wait until all finish and then log results.
If those queries need to be run in sequence.
async function runQueries() {
for (const item of jsonObj) {
item.procesa = await data_mysql.vertodo(item);
}
}
runQueries.then(function () {
jsonObj.forEach(function (item) {
console.log(item.procesa);
});
});
add a comment |
up vote
0
down vote
I don't fully understand what you want to do, but I assume that you want to run those queries in loop and wait until all finish and then log results.
If those queries need to be run in sequence.
async function runQueries() {
for (const item of jsonObj) {
item.procesa = await data_mysql.vertodo(item);
}
}
runQueries.then(function () {
jsonObj.forEach(function (item) {
console.log(item.procesa);
});
});
add a comment |
up vote
0
down vote
up vote
0
down vote
I don't fully understand what you want to do, but I assume that you want to run those queries in loop and wait until all finish and then log results.
If those queries need to be run in sequence.
async function runQueries() {
for (const item of jsonObj) {
item.procesa = await data_mysql.vertodo(item);
}
}
runQueries.then(function () {
jsonObj.forEach(function (item) {
console.log(item.procesa);
});
});
I don't fully understand what you want to do, but I assume that you want to run those queries in loop and wait until all finish and then log results.
If those queries need to be run in sequence.
async function runQueries() {
for (const item of jsonObj) {
item.procesa = await data_mysql.vertodo(item);
}
}
runQueries.then(function () {
jsonObj.forEach(function (item) {
console.log(item.procesa);
});
});
answered Nov 22 at 23:02
Jake Noh
465
465
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53435780%2fproblems-with-the-values-of-the-promise-promise-value%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown