这只是我的快递服务器的一部分。我想将代码拆分为不同的文件。
import express from 'express'
const app = express()
app.get('/import', async (req, res) => {
var fs = require('fs')
fs.createReadStream('./src/data.csv')
.pipe(parse({
delimiter: ',',
skip_lines_with_error: true
}))
.on('error', function (err) { console.log(err) })
.on('data', async function (row) {
// do a lot of stuff here
})
res.status(200)
})
在这种情况下, import 应该从另一个文件导入,但是我不知道该怎么做。
helper / import.js
export const import = (req, res) => {
var fs = require('fs')
fs.createReadStream('./src/data.csv')
.pipe(parse({
delimiter: ',',
skip_lines_with_error: true
}))
.on('error', function (err) { console.log(err) })
.on('data', async function (row) {
// do a lot of stuff here
})
res.status(200)
}
server.js
import express from 'express'
const app = express()
app.get('/import') // <-- ??
如何在此处获取异步功能?
答案 0 :(得分:1)
因此,您基本上想将路由放入其他文件中。
我倾向于创建一个包含所有“路线”的文件夹。
我们以import.js为例。.文件如下所示:
const express = require('express');
const router = express.Router();
router.get('/', (req, res) => {
var fs = require('fs')
fs.createReadStream('./src/data.csv')
.pipe(parse({
delimiter: ',',
skip_lines_with_error: true
}))
.on('error', function (err) { console.log(err) })
.on('data', async function (row) {
// do a lot of stuff here
})
res.status(200)
});
module.exports = router;
然后您的server.js将实现该目标...
const importRouter = require("./helper/import.js");
app.use('/import', importRouter);