Redis - я пытаюсь импортировать файл в моем NodeJS, не назначая его переменной, пока он не работает - PullRequest
0 голосов
/ 05 марта 2019

Краткое описание

Я пытаюсь импортировать файл, содержащий избыточный код, в потребителях.Пока что кажется, что мой файл не читается потребителем, который возвращает мне:

функция getAsync не определена

, но она определена в file1.js

Вот мой фрагмент:

file1.js:

const redis=require("redis"); 
rejson = require('redis-rejson');
const {promisify} = require('util'); 

rejson(redis); /* important - this must come BEFORE creating the client */
let client= redis.createClient({
    port:6380,
    host:'localhost',
    // password:process.env.rPass
});  

const setAsync = promisify(client.json_set).bind(client);
const arrappendAsync = promisify(client.json_arrappend).bind(client);
const getAsync = promisify(client.json_get).bind(client); 
const existsAsync= promisify(client.exists).bind(client);

file2.js:

require("./redisConnect")
async function getUser(){ 
    let res=await getAsync("userStock", ".")
        .catch((err) => console.error(err)); 
    resArray= JSON.parse(res)
    console.log("userStock res: ", resArray[0]);
    client.quit()
}

// use userId to filter relevant array 
getUser()

Так как справиться с этой ситуацией?

Любая подсказка была бы отличной, спасибо

1 Ответ

0 голосов
/ 05 марта 2019

В file1.js вам нужно сделать:

module.exports = getAsync;

Затем в file2.js сделать это:

var getAsync = require('./file1.js')
...