gpt4 book ai didi

javascript - 如何将数据从一个函数导出到另一个函数

转载 作者:行者123 更新时间:2023-12-02 23:08:47 25 4
gpt4 key购买 nike

我希望从一个函数生成数据,并将其用于另一函数。

到目前为止我已经尝试过:

1.返回对象
2. 将对象插入数组
3. 迭代对象并推送到数组
4. 将变量加载到函数定义中。

功能A:读取目录中的文件

const directoryPath = path.join(__dirname, '../views/mtemp');

function list(param){
fs.readdir(directoryPath, function (err, files) {
if (err) {
console.log(err);
}
files.forEach(function (file) {
param.push(file);
});
});
console.log(param);
}

功能 B:Express-Router

router.get('/', function(req, res, next) {
var param = [];
list(param);
console.log(param);
res.render('task');
});

功能A:解析目录并列出其中的文件。功能B:Express-router

我想显示目录而不嵌套 Func。 A 进入 Func。

最佳答案

对函数做出 promise ,然后导出和导入它

文件 foo.js

const {promisify} = require('util');
const {readdir} = require('fs');
const readAsync = promisify(readdir);

module.exports = (path) => readAsync(path);

文件 bar.js

const reader = require('./foo');

reader('./').then(e => {
console.log(e);
});

或者在你的文件中

router.get('/', async function(req, res, next) {
const list = await reader('./');
console.log(list);
res.render('task');
});
<小时/>

不要按照另一个答案中的建议使用 fs.readdirSync。

关于javascript - 如何将数据从一个函数导出到另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57462544/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com