Node.js 如何在其他js文件中使用exports对象
这里是user.js文件及其类和导出Node.js 如何在其他js文件中使用exports对象,node.js,express,Node.js,Express,这里是user.js文件及其类和导出 class User { static async select() { const selectResult = await usersDAL.listUsers(); return camelizeKeys(selectResult); } } module.exports.User = User; 我想在usersApi文件中使用 router.get('/',(req,
class User {
static async select() {
const selectResult = await usersDAL.listUsers();
return camelizeKeys(selectResult);
}
}
module.exports.User = User;
我想在usersApi文件中使用
router.get('/',(req, res) =>{
let userList = new User().select();
res.send(userList);
});
错误显示
(intermediate value).select is not a function
请使用like so帮助我:
/user.js
路径假定user.js
文件与usersApi
位于同一目录中
也就是说,您可能只想导出用户
:
user.js
usersApi.js
※如果可以,首先您应该使用更新的Node.js版本6.0 您可以通过
模块导出对象。导出
和导入通过要求
如何出口
如何导入
User.select()是一个用作异步方法的方法。
您应该包装承诺块或使用异步等待语句
对不起,我的英语不好,我不执行上面的代码。
根据您的问题和user.js文件的类图,它可能无法正常工作。
class User {
static async select() {
const selectResult = await usersDAL.listUsers();
return camelizeKeys(selectResult);
}
}
module.exports.User = User;
您希望导出并在usersApi文件中使用它。这样,您就可以使用
const User = require('.user');
router.get('/', async (req, res) =>{
let userList = await User.User.select();
res.send(userList);
});
因为导出User.js文件(ex:module.exports.User=User)中的用户对象就是这样,所以需要User.User.select()。您应该知道的另一个信息是,静态异步方法应该在异步或承诺方法内部调用。因此,我使用wait User.User.select()检查您的意见,但得到相同的错误=>(中间值)。select不是function@Md.MaidulIslam如果您知道如何访问静态方法,可以查看下面的链接。
const User = require('./user.js')
class User {
static async select() {
const selectResult = await usersDAL.listUsers();
return camelizeKeys(selectResult);
}
}
module.exports = User;
const User = require('../model/user') // this path is dummy.
router.get('/', async (req, res) =>{
let userList = await User.select();
res.send(userList);
});
class User {
static async select() {
const selectResult = await usersDAL.listUsers();
return camelizeKeys(selectResult);
}
}
module.exports.User = User;
const User = require('.user');
router.get('/', async (req, res) =>{
let userList = await User.User.select();
res.send(userList);
});