Как исправить некоторые основные грамматические проблемы JavaScript - PullRequest
0 голосов
/ 15 апреля 2019

Я изучаю NodeJS несколько дней назад. Я сделал программу Modbus TCP-коммуникатор в Arduino. и я сделал сервер NodeJs с mariaDB. Я получил несколько кодов из многих примеров источников GitHub. (напр., node-modbus, mariadb) Но когда я перепутал их коды, проблема стала возникать. Просто я хотел вставить данные в свою базу данных. Я попытался сделать переменные, и я поместил код в функцию setInterval. но это не удалось. У меня есть два кода.

 client.on('connect', function () {
 setInterval( function () {
 client.readHoldingRegisters(0, 125).then((response) => 
 console.log(response.payload))
 asyncFunction();
 }, time_interval) /* reading coils every second */
 })"


 const mariadb = require('mariadb');
 const pool = mariadb.createPool({host: '127.0.0.1', port:3306, user: 
 'root', password:'###', database:'test',connectionLimit: 5});

 async function asyncFunction() {
 let conn;
 try {
 conn = await pool.getConnection();
 const rows = await conn.query("SELECT * from test.egtest");
 console.log(rows); //[ {val: 1}, meta: ... ]
 const res = await conn.query("INSERT INTO test.egtest value (?, ?)", [1, 
 "mariadb"]);
 console.log(res); // { affectedRows: 1, insertId: 1, warningStatus: 0 }

 } catch (err) {
 throw err;
 } finally {
  if (conn) return conn.end();
  }
 } 

var data_result;
client.on('connect', function () {
setInterval( function () {
 client.readHoldingRegisters(0, 125).then((response) => 
console.log(response.payload))
data_result= response.payload;
 asyncFunction();

 }, time_interval) /* reading coils every second */
})"
const mariadb = require('mariadb');
const pool = mariadb.createPool({host: '127.0.0.1', port:3306, user: 'root', password:'###', database:'test',connectionLimit: 5});

async function asyncFunction() {
  let conn;
  try {
    conn = await pool.getConnection();
    const rows = await conn.query("SELECT * from test.egtest");
    console.log(rows); //[ {val: 1}, meta: ... ]
    const res = await conn.query("INSERT INTO test.egtest value (?, ?)", [1, data_result]);
    console.log(res); // { affectedRows: 1, insertId: 1, warningStatus: 0 }

  } catch (err) {
    throw err;
  } finally {
    if (conn) return conn.end();
  }
}

теперь NodeJS показывает ошибку "ответ не определен", я пытаюсь поставить некоторые коды языка C или JAVA. Может быть, это не тот же язык. Как я могу решить это? и как выучить базовую грамматику javasciprt?

...