【发布时间】:2019-03-28 02:47:02
【问题描述】:
我认为渲染是在搜索文件上的字符串之前进行的,我尝试了不同的方法,但似乎无法正常工作。任何帮助将不胜感激。我是nodejs的菜鸟。我试图获取用户的 id 并查询并获取所有数据,然后查看他是否在给定的任何列表中并最终呈现页面。
const j = [];
let name = '';
const filename = [];
var ext = '';
module.exports = function(app, express) {
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
app.post('/cusdetails', isLoggedIn, function (req, res) {
var cusid=req.body.cusid;
var insertQuerys = "SELECT * FROM customer WHERE cusid=? ORDER BY rowid DESC LIMIT 1";
connection.query(insertQuerys,[cusid],
function(err, rows){
rows.forEach( (row) => {
name=row.fncus;
});
fs.readdir('./views/iplist', function(err, files) {
if (err)
throw err;
for (var index in files) {
j.push(files[index])
}
j.forEach(function(value) {
var k = require('path').resolve(__dirname, '../views/iplist/',value);
fs.exists(k, function(fileok){
if(fileok) {
fs.readFile(k, function(err, content) {
if (err) throw err;
if (content.indexOf(name) > -1) {
ext = path.extname(k);
filename.push(path.basename(k, ext));
}
});
}
else {
console.log(" FileNotExist ");
}
});
});
});
console.log(filename);
res.render('cusdetails.ejs', {rows: rows, user:req.user , aml: filename });
});
})
【问题讨论】:
-
您可以使用
Promise和/或async/await来实现您想要做的事情。像这个ordering问题。 stackoverflow.com/a/55361774/7185241 -
@naga-elixir-jar 你能帮我调整一下代码吗?理解起来真的很有帮助。我已经尝试了几个小时,但仍然无法掌握它。
-
你使用哪个包进行sql查询?
-
mysql 是我正在使用的一个
标签: node.js